Git で「両方追加」のマージ競合を解決するにはどうすればよいですか? 質問する

Git で「両方追加」のマージ競合を解決するにはどうすればよいですか? 質問する

Git でリベースしているのですが、競合が 1 つ発生しました。それは「両方追加」です。つまり、私のブランチとリベース先のブランチにまったく同じファイル名が別々に追加されました。次のように表示されますgit status

# Unmerged paths:
#   (use "git reset HEAD <file>..." to unstage)
#   (use "git add/rm <file>..." as appropriate to mark resolution)
#
#       both added:         src/MyFile.cs

マージ ツールまたはコマンドラインからこの問題を解決するためのオプションは何ですか?

もし私が使用する git rm src/MyFile.csどのファイル バージョンを削除または保持するかをどうやって知るのでしょうか?

ベストアンサー1

gitを使用すると、git rmインデックスからそのパスのすべてのバージョンが削除されるため、解決アクションではどちらのバージョンも削除されません。

git checkout --ours src/MyFile.csを使用して、リベース先のブランチからバージョンを選択したり、git checkout --theirs src/MyFile.csリベース先のブランチからバージョンを選択したりできます。

ブレンドが必要な場合は、マージ ツールを使用するか、手動で編集する必要があります。

おすすめ記事