[git]マージ時のコンフリクトで片側の変更だけ適用する方法

  • 139
    いいね
  • 1
    コメント
この記事は最終更新日から1年以上が経過しています。

2つのブランチをマージした際にコンフリクトしたとして、どちらかだけを全面的に適用したい場合はどうするか。

以下のように、checkout --ourscheckout --theirs を使い分ければ良い。

# 2つのブランチ間でコンフリクトしているファイル fileA.txt と fileB.txt があるとする

# fileA.txt を現在チェックアウトしているブランチ側の対応に合わせる場合
$ git checkout --ours fileA.txt
$ git add fileA.txt    # add を忘れずに

# fileB.txt をマージさせたブランチ側に合わせる場合
$ git checkout --theirs fileB.txt
$ git add fileB.txt

$ git commit