kledgeb UbuntuやLinuxの最新情報を紹介

Ubuntu Git その250 - マージコンフリクトの状況を表示する(git status)

マージコンフリクトの状況を表示する

  「git status」コマンドは、「マージコンフリクト」発生時に実行すると、「マージコンフリクト」の状況を表示します。

  どのファイルで「マージコンフリクト」が発生しているのか、どのような「マージコンフリクト」が発生しているのか、確認することができます。

マージコンフリクトの発生と状況の確認

  ここでは例として、「マージコンフリクト」を発生させ、「マージコンフリクト」の状況を確認します。

  1.ブランチの確認

    現在のブランチ構成を確認すると、以下のようになっています。
    現在のブランチは、「master」ブランチであることが分かります。
    同様に、「HEAD」は「master」ブランチを指していることが分かります。


    ここでは例として、「master」ブランチに「fix」ブランチをマージします。

  2.ブランチの状態

    ブランチの状態を図にすると、以下のようになります。


  3.マージを行う

    以下のように「master」ブランチに「fix」ブランチをマージすると、「マージコンフリクト」が発生します。


    「マージコンフリクト」は、「common.txt」ファイルで発生したと出力されています。

  4.ワーキングディレクトリーの確認

    「ワーキングディレクトリー」を確認すると、以下のようになっています。


    「common.txt」ファイルは、「マージコンフリクト」が発生したファイルです。
    「fix.txt」ファイルは、「fix」ブランチにのみ存在していたファイルです。
    「master.txt」ファイルは、「master」ブランチにのみ存在しているファイルです。

  5.common.txtファイルの中身

    「マージコンフリクト」が発生した「common.txt」ファイルの中身を見てみると、以下のようになっています。
    コンフリクトが発生したか箇所に、「コンフリクトマーカー」が挿入されています。


  6.マージコンフリクトの状態

     「ワーキングディレクトリー」の状態を確認し、「マージコンフリクト」の状態を確認します。

    「端末」から、以下のコマンドを実行します。
    コマンドの詳細は、「ワーキングディレクトリーにあるファイルの状態を表示するコマンドの説明」を参考にしてください。

git status


    上記から、「fix.txt」ファイルは新規に追加されるファイルであることが分かります。
    「common.txt」ファイルは、「マージコンフリクト」が発生したファイルであることが分かります。

ファイルの状態の見方

  「git status」コマンドで表示されるファイルの状態の見方です。
  ファイルの状態により、以下の4つのカテゴリーに分けて表示されます。

  1. Changes to be committed
  2. Changes not staged for commit
  3. Untracked files
  4. Unmerged paths

  「1.」〜「3.」は、リンク先を参考にしてください。

4.Unmerged paths

  「マージコンフリクト」が発生しているファイルの一覧が表示されます。
  「マージコンフリクト」の内容により、以下のカテゴリーに分かれます。

  4-1.both modified

    「マージベース」にあるファイルと、マージされるブランチ(HEAD)にあるファイルと、マージするブランチにあるファイルを「3ウェイマージ」した結果、変更箇所がコンフリクトしているファイルです。

    「両方変更されている」の「両方」とは、マージされるブランチとマージするブランチのことを指します。

    ユーザーは、コンフリクトしている箇所を編集し、コンフリクトの解消を行います。

  4-2.both added

    マージされるブランチ(HEAD)にあるファイルと、マージするブランチにあるファイルをマージした結果、変更箇所がコンフリクトしているファイルです。

    「4-1.」と異なり、 「マージベース」に同じファイルが存在しないケースです。

    ユーザーは、コンフリクトしている箇所を編集し、コンフリクトの解消を行います。

  4-3.deleted by them

    「マージベース」とマージされるブランチ(HEAD)に存在するファイルが、マージするブランチからは削除されているファイルです。

    ユーザーは、このファイルを削除するか、それとも削除せずファイルを残すか、判断します。

  4-4.deleted by us

    「マージベース」とマージするブランチに存在するファイルが、マージされるブランチ(HEAD)では削除されているファイルです。
    
    ユーザーは、このファイルを削除するか、それとも削除せずファイルを残すか、判断します。

  4-5.added by us

    マージされるブランチ(HEAD)にのみ存在するファイルです。
    「git merge」コマンドでマージする場合、このファイルは影響を受けません。

  4-6.added by them

    マージするブランチにのみ存在するファイルです。
    「git merge」コマンドでマージする場合、このファイルは自動的に「ステージングエリア」に追加されます。

  4-7.both deleted

    マージされるブランチ(HEAD)及び、マージするブランチから削除されたファイルです。    
    「git merge」コマンドでマージする場合、このファイルは自動的に削除されます。


Git
スポンサー
コメント
コメントポリシー
コメントをする前に UbuntuのCode of Conduct(CoC/行動規範) を確認し、CoCに沿ったコメントをお願いします。
コメントの使い方は、コメントの使い方を参照してください。
同一カテゴリーの記事
SNS
人気の記事
  • Ubuntu 22.04 その120 - UbuntuのブートローダーをBoot Repairで修復するには・Ubuntuが起動しないトラブルを解決
    UbuntuのブートローダーをBoot Repairで修復するには 「Boot Repair」はOSのブートローダーに起因するOSが起動しない問題を簡単に解決してくれるアプリです。
  • Ubuntu 22.04 その79 - 画面ロックの有効・無効を設定するには・画面ロック時の設定をカスタマイズするには
    画面ロックの有効・無効を設定するには 一定時間ユーザーによる操作がない時に、自動的に画面をロックしパスワードで保護したり、画面をブランク状態にできます。
  • Ubuntu 22.04 その95 - ディスプレイサーバーを切り替えるには・XorgとWayland
    ディスプレイサーバーを切り替えるには 「Ubuntu」はデフォルトで2種類のディスプレイサーバーを提供しています。
  • VirtualBox その125 - ゲストOSのUbuntuにLinux Guest Additionsをインストールするには
    ゲストOSのUbuntuにLinux Guest Additionsをインストールするには 仮想マシンにインストールしたゲストOSの「Ubuntu」に、「Linux Guest Additions」をインストールする方法です。
  • Linux その309 - This Week in Plasma の貢献者の募集と投稿頻度の抑制
    This Week in Plasma の貢献者の募集と投稿頻度の低下 KDE で This Week in Plasma の貢献者が募集されています。
  • Ubuntu 26.04 その5 - デイリービルドのディスクイメージが利用可能に・ディスクイメージのダウンロード
    デイリービルドのディスクイメージ Ubuntu 26.04 LTS のデイリービルドのディスクイメージが利用できるようになりました。
  • Ubuntu 26.04 その9 - Ubuntu Desktop 26.04 LTS の開発方針・プリインストールアプリの変更やソフトウェア管理の一元化など
    Ubuntu Desktop 26.04 LTS の開発方針 2025年11月26日、Ubuntu Desktop 26.04 LTS の開発方針がアナウンスされました。
  • Ubuntu nano その5 - 文字列を検索する
    文字列を検索する(Where Is)   文字列の検索は、部分一致と正規表現による検索が可能です。 検索の開始始点   現在カーソルのある位置から検索を行います。   もし、テキストの最後まで検索して文字が見つからない場合、   nanoはテキストの先頭から検索...
  • Ubuntuのバージョンと開発コードの対応表
    UbuntuのバージョンとUbuntuの開発コード 「Ubuntu」には各バージョンごとに開発コードが設定されます。
  • Ubuntu 22.04 LTSのインストール その5 - UEFI環境でパーティションの作成と構成 〜 ブートローダーのインストール先の選択
    UEFI環境でパーティションの作成と構成を行う UEFI環境でパーティションの作成と構成を行います。
記事のピックアップ
オプション