git->特定のディレクトリの最近のコミットで変更されたファイルのリストを表示する


回答:


164

これはsvnコマンドに似ています。ファイルのステータスが表示されます。追加(A)、コピー(C)、削除(D)、変更(M)、名前変更(R)などです。

git log --name-status -10 path/to/dir

の完全なドキュメントページを参照する価値がありますgit log。そこで-10は、過去10回のコミットを参照していることを学び-p、さまざまな他のものの中で、完全なパッチを提供します。


12
完全を期すために、よく使用される同様のオプションのセットは-p--stat(フルパッチ)、(変更された行数)、--numstat--stat機械で読めるように)--name-status、および--name-only(ファイル名のみ)です。
Cascabel 2010年

3
まだ知らないうちにこの質問に来た人にとっては、-10は表示したいコミットの数を意味します。コミットの包括的なリストが必要な場合は、必要に応じて-1000以上など、異常に大きな数にしてみてください。
Julian Soro

特定のコミットまたはラベル以降の履歴を表示することもできますか?それは何百ものコミットの前なので、それを数えようとしています...
MrFox '13 / 07/13

2
@MrFox git log <from revision>..、例えばgit log abc123..。ここでは範囲形式についてさらに読む:kernel.org/pub/software/scm/git/docs/...
htanata

36

コミット情報なしで、過去10回のコミットで変更されたすべてのファイルを表示するには、次のようにします。

git diff --name-only HEAD~10..HEAD yourdir

3
エディターでファイルを再び開くための完璧なソリューション。
cdosborn 2015

1
このソリューションは、ファイルパスのみをリストし、コメントはリストしません。これは、受け入れられた回答よりも高く評価されます。必要なのは、指定されたコミットで変更されたファイルのリストだけである場合、このソリューションはまさにそれを行います。
ビッグリッチ

6

やってみる

git log -p -10 yourdir/

うまくいくはずです。


1
OPは、完全なパッチではなく、変更されたファイルのリストを要求しました。
Cascabel 2010年

1
あなたが変更されたファイルのリストが必要な場合は、-pの代わりに--stat行うことができます
blue112

1

すべてのcommitブランチ(最近および古い)を表示するには、ブランチのコミット数をカウントする必要があります

git rev-list --count branch_name

すべてのコミット数を取得したら、実行できます

git log --name-status -countNumber /path

また--pretty=onelinegit log上記のコマンドにオプションを追加して、ビューを簡略化できます。追加| sort | uniqコマンドは、1つは、あたりとしてA / C / D / M / Rステータスタギング見るのを助けるでしょうhtanataの答え
XavierStuvw
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.