web-dev-qa-db-ja.com

gitkを使用すると、2つのコミットの違いを確認できますか?

私が試してみました:

git diff sha1 sha2

しかし、出力は最高ではありません、gitkを使用して2つのコミットの違いを確認することは可能ですか?

39
Blankman

Windowsでは少なくともそれは完全に可能です:

enter image description here

50
Mr_and_Mrs_D

実際にdiffが必要かどうか、または通常のgitk表現が必要かどうかはわかりませんが、sha1からsha2までのコミットのみが対象です

後者の場合、通常のリビジョンパラメータをすべて指定できます。 https://www.kernel.org/pub/software/scm/git/docs/gitrevisions.html

だからあなたは次のようなことができます

gitk sha1..sha2

または、マスターがsha2ブランチにマージされ、マスターからのコミットを見たくない場合、sha1は、masterからブランチされた最初のコミットです

gitk master..sha2
7
Jens Schauder

残念ながら、gitkはそのような方法でdiff出力をサポートしていません。 :-(ただし、git difftoolを使用できます。組み込みのツールのサポートが付属しています。たとえば、git difftool -t kdiff3 sha1 sha2を実行できます。ファイルの差分を1つずつ表示します。差分ツールを介して一度に1つ以上のファイルをサポートすることについてのgitリストですが、それがどこに到達したのかはわかりません。

3

いいえ。ただし、me​​ldを使用してそれを行うことができます。

git checkout sha1
git reset sha2
git diftool --tool=meld

コツは、sha1をチェックアウトしてからsha2にリセットすることで、それらの間のすべての違いがコミットされていない変更であるように見せることです。次に、meldはその機能を使用して、コミットされていない変更を表示し、関連するすべてのファイルのdiffを同時に実行できます。

2
Benubird