ブランチ内のファイルの削除によるマージ競合を修正するにはどうすればよいですか? 質問する

ブランチ内のファイルの削除によるマージ競合を修正するにはどうすればよいですか? 質問する

ブランチを作成しdialog、それをブランチにマージしようとしましたmaster。 2 つの競合があります。 解決方法がわかりませんCONFLICT (delete/modify)。 どうすればよいか教えてください。

$ git checkout master
$ git merge dialog
CONFLICT (delete/modify): res/layout/dialog_item.xml deleted in dialog and modified in HEAD. Version HEAD of res/layout/dialog_item.xml left in tree.
Auto-merging src/com/DialogAdapter.java
CONFLICT (content): Merge conflict in src/DialogAdapter.java
Automatic merge failed; fix conflicts and then commit the result.

を開いてsrc/DialogAdapter.java競合を修正し、 を実行しましたgit add src/DialogAdapter.java。他に何をする必要がありますか?

ベストアンサー1

競合メッセージ:

競合 (削除/変更): res/layout/dialog_item.xml がダイアログで削除され、HEAD で変更されました

res/layout/dialog_item.xmlマージする「ダイアログ」ブランチでは削除されたが、マージ先のブランチの HEAD では変更されたことを意味します。

だから、あなたは決めなければならない

  • git rm res/layout/dialog_item.xml「 」を使用してファイルを削除します

または

  • HEAD からのバージョンを (おそらく編集後に) " git add res/layout/dialog_item.xml"で受け入れる

次に、「 」でマージを確定しますgit commit

git は、(まれな) 望まないマージ コミットを作成しているという警告を表示します。おそらく、そのケースがそれほどまれではなかった時代の名残でしょう。

おすすめ記事