これが私の問題です。例えば、
A---B---C topic
/
D---E---F---G master
fileA
on E
commit (トピックとマスターの共通の祖先)の内容は次のとおりです。
abc def
fileA
topic
ブランチは次のとおりです。
abc def
abc
fileA
master
ブランチは次のとおりです。
abc def
abc
gh //added by master.
" git checkout master; git merge topic
" を実行すると、新しいfileA
ものが得られます:
abc def
abc
gh
しかし、マージブランチの2つのファイルに違いがある場合は、gitを終了してエラーメッセージなどをスローしてもらいたいです。
VonC の編集と回答に感謝します。次回は質問形式に気付くでしょう:)。
しかし、他の誰かがトピック内の別のファイルを変更した場合、コミット E 以降マスターでは変更されていませんが、ブランチにマージできるようにすることができます。
なぜこれが必要なのですか? 他の誰かが同じファイルに新しい変更を加えたことに気付かなかった場合
、元のファイルと比較して、パッチが「自分の」変更を生成することを確認したいだけなので、それらがマージされる可能性があります。fileA