するとgit diff COMMIT
、そのコミットと HEAD の間の変更が表示されますが (私の知る限り)、その単一のコミットによって行われた変更を確認したいと思います。
diff
/log
で、その出力が得られる明らかなオプションは見つかりませんでした。
するとgit diff COMMIT
、そのコミットと HEAD の間の変更が表示されますが (私の知る限り)、その単一のコミットによって行われた変更を確認したいと思います。
diff
/log
で、その出力が得られる明らかなオプションは見つかりませんでした。
COMMIT
特定のハッシュの差分を表示するにCOMMIT
は、コミットのハッシュは次のとおりです。
git diff COMMIT~ COMMIT
COMMIT
それの先祖との違いを示しますCOMMIT
。コマンドの詳細についてはgit diffのマニュアル ページを参照し、表記法とその仲間についてはgitrevisionsを参照してください。~
あるいは、git show COMMIT
非常に似たようなことをします。(差分を含むコミットのデータ。ただし、マージ コミットは対象外です。) git show manpageを参照してください。
(それと頭git diff COMMIT
の違いも示しますCOMMIT
。)
「git commit とその親の diff の短縮形は?」で述べたように、次のように使用することもできますgit diff
。
git diff COMMIT^!
また
git diff-tree -p COMMIT
git show では、(diff だけに集中するために) 次のことを行う必要があります。
git show --color --pretty=format:%b COMMIT
COMMIT
パラメータはcommit -ishです:
コミット オブジェクト、またはコミットオブジェクトに再帰的に逆参照できるオブジェクト。以下はすべてコミットっぽいものです: コミット オブジェクト、コミット オブジェクトを指すタグ オブジェクト、コミット オブジェクトを指すタグ オブジェクトを指すタグ オブジェクトなど。
コミットっぽいものを参照するには、 gitrevision "SPECIFYING REVISIONS"を参照してください。「 Git でツリーっぽいとはどういう意味ですか?
」
も参照してください。
この簡単な方法を試すこともできます。
git show <COMMIT>
git show
最新のコミットで行われた変更を示します。と同等git show HEAD
です。
git show HEAD~1
コミットを 1 つ戻します。
git-diff(1)のマニュアルページから:
git diff [options] [<commit>] [--] [<path>…]
git diff [options] --cached [<commit>] [--] [<path>…]
git diff [options] <commit> <commit> [--] [<path>…]
git diff [options] <blob> <blob>
git diff [options] [--no-index] [--] <path> <path>
真ん中の 3 番目のものを使用します。
git diff [options] <parent-commit> <commit>
また、同じmanページの下部の例セクションから:
$ git diff HEAD^ HEAD <3>
最後のコミットの前のバージョンと最後のコミットを比較します。
確かに、少し紛らわしい言い回しですが、次のように混乱が少なくなります。
最新のコミットとその前のコミットを比較します。
別の可能性:
git log -p COMMIT -1
私にとって、これはうまく機能します
git show COMMIT --compact-summary
次の情報を表示するもの
ファイルの作成または削除 ("new" または "gone"、シンボリック リンクの場合はオプションで "+l") やモードの変更 (追加または削除のための "+x" または "-x") などの拡張ヘッダー情報の要約を出力します。それぞれ実行可能ビット) diffstat で。ファイル名部分とグラフ部分の間に情報を入れます。--stat を意味します。
git diff HEAD HEAD^1
親コミットとの差分を表示するために使用できます。
ファイルのリストのみを表示する場合は、--stat
オプションを追加します。
コミットごとに作成者と時間を表示するには、 を使用しますgit show COMMIT
。次のような結果になります。
commit 13414df70354678b1b9304ebe4b6d204810f867e
Merge: a2a2894 3a1ba8f
Author: You <you@you.com>
Date: Fri Jul 24 17:46:42 2015 -0700
Merge remote-tracking branch 'origin/your-feature'
変更されたファイルを確認するには、上記のMerge行の値を使用して次のコマンドを実行しますgit diff --stat a2a2894 3a1ba8f
。
実際の差分を見たい場合は、 を実行してくださいgit --stat a2a2894 3a1ba8f
。
完全な変更を確認するには:
git diff <commit_Id_1> <commit_Id_2>
変更/追加/削除されたファイルのみを確認する場合:
git diff <commit_Id_1> <commit_Id_2> --name-only
注: コミットを行わずに差分をチェックする場合、コミット ID を入力する必要はありません。
このコマンドは、Git の親 commit-hash を取得します。
git log -n 2 <commit-hash>
その後git diff-tool <commit-hash> <parent-commit-hash>
例:
bonnie@bonnie ~/ $ git log -n 2 7f65b9a9d3820525766fcba285b3c678e889fe3
commit 7f65b9a9d3820525766fcba285b3c678e889fe3b
Author: souparno <souparno.majumder@gmail.com>
Date: Mon Jul 25 13:17:07 2016 +0530
CSS changed to maintain the aspect ratio of the channel logos and to fit them properly.
commit c3a61f17e14e2b80cf64b172a45f1b4826ee291f
Author: souparno <souparno.majumder@gmail.com>
Date: Mon Jul 25 11:28:09 2016 +0530
The ratio of the height to width of the channel images are maintained.
この後
git difftool 7f65b9a9d3820525766fcba285b3c678e889fe3b c3a61f17e14e2b80cf64b172a45f1b4826ee291f