1

私たちの git ワークフローでは、ブランチを使用します (成功した git ブランチ モデルで説明されているものとほとんど同じです) 。

したがって、あるブランチを別のブランチにマージするときは、次を使用します。

git checkout <destination>
git merge --no-ff <src>

競合がある場合は、それを解決した後、マージが正しいかどうかを確認したいと思います (宛先で何も上書きされていない場合、およびすべての変更がソースから取得された場合)。

宛先で何も上書きされていないかどうかを確認するために、マージ前のコミットとマージ解決のコミットの間で差分を実行します。

しかし、すべてがマスターから取得され、マージ/解決で失われていないことを確認するにはどうすればよいですか?

ありがとう。

4

2 に答える 2

1

そうですね、衝突でないものはすべてうまく「取られた」と確信できます。また、競合がある場合は、とにかく手動で解決する必要があるため、gitそこでは役に立ちません。

競合中に何が起こるかよくわからない場合は、次git help mergeのオプションがあります。

   An alternative style can be used by setting the "merge.conflictstyle" configuration variable to "diff3". In "diff3"
   style, the above conflict may look like this:

このオプションを設定すると、自分と相手の側だけでなく、競合する行の元のテキストも表示されます。これにより、すべての当て推量が削除されるはずです。

于 2016-08-19T10:13:47.413 に答える
1

マージされたブランチの前のコミットとの結果のマージの差分を表示できます

git diff HEAD^

このコマンドは、現在の状態(あなたの場合はマージである必要があります)とこのブランチの以前のコミットとの間のすべてのファイルの違いを表示します

于 2016-08-19T12:45:39.547 に答える