0

このような地元の歴史があるとしましょう

----A              master
     \        
      C------D     feature

次のコマンドを実行してコミット B を作成した場所:

git checkout master
git merge feature --no-ff -m "Added new feature"

----A----------B   master
     \        /
      C------D     feature

at master (commit B) を使用した gitkHEADでは、「パッチ」に空白の差分が表示されます。

しかし、パッチが B と A の差分を表示することを期待しています。次のコマンドが示すものと同様です。

git checkout master      //now at B
git diff HEAD^

この方法で gitk を機能させるには、どのようなオプションが必要ですか?

4

1 に答える 1

0

ここで少し推測します:

Gitk は、コミットのコンテンツと、親のコミットのいずれにも含まれていなかったコンテンツとの違いを示します。

通常、コミットはその親から何かを変更しますが、マージの場合、実際のマージ コミットは変更を行いません。

マージによって解決された競合 (どちらの親にもない変更) が行われた場合、それらは gitk に表示されます。

この投稿には答えがあるようです -推測は少ないです.

マージの親とマージ コミットの間の完全な差分を表示する最も簡単な方法は、親を選択し (通常のクリック)、マージ コミットのコンテキスト メニュー (右/別のクリック メニュー) から [選択した差分 -> この] を選択することです。 "。

于 2014-06-05T14:49:48.683 に答える