2017-04-14 6 views
0

コミットごとに変更されたファイルのリストをgit logに表示したいとします。 Another questionは単一のコミットのために変更されたファイルを表示する方法についての質問、およびfollowing responseを得た:ログ内のコミットごとに変更されたファイルを表示するにはどうすればよいですか?

$ git diff-tree --no-commit-id --name-only -r bd61ad98 
index.html 
javascript/application.js 
javascript/ie6.js 

私が知りたいのは何git logにこれを適用する方法です。つまり、次のような出力を得るためにはどのコマンドを実行する必要がありますか?それが可能だ場合

commit 78b3ba12002f9cab5cbb57fac87d8c703702a196 
Author: WD40 <[email protected]> 
Date: Fri Apr 14 09:59:57 2017 -0500 

    Change more things 

    about.html 
    javascript/application.js 
    javascript/ie6.js 

commit 0f98b1f7eda33a4e9cfaab09506aa8094044085f 
Author: WD40 <[email protected]> 
Date: Fri Apr 14 09:49:03 2017 -0500 

    Change some things 

    index.html 
    javascript/application.js 
    javascript/ie6.js 

また、私は同じことを行う方法を知りたい、だけでなく、追加や削除されたファイルを表示したいです。

私はgit log --formatオプションを見ましたが、私が欲しいものに似ているものは見つかりませんでした。私はgitログでは不可能だと感じていて、複数のgit diff-treeの出力を一緒にストリングする必要があるかもしれませんが、私はスクリプトなしでどちらのことについてもわからない(私の望みを達成する唯一の方法かもしれないが、それは私の最後の手段だろうから、私は先に進んで尋ねると思った)。

答えて

2

git-logには、変更を表示するための多くのオプションがあります。 They're found in the docs as Common Diff Optionsは、git-diff-treeのようにコミットを表示できる多くのコマンドで共有されているため共通です。

--name-onlyです。

  • -pは、ファイルの変更を表示するための完全なパッチ
  • --stat、名前とどのようにそれは、削除、修正(変更を表示するには、変更
  • --name-statusの数を表示するには...もあります。 ..)

そしてはるかに!

ので、例えば、git log --name-statusのようなものが表示されることがあります:

Aが追加され
commit 78b3ba12002f9cab5cbb57fac87d8c703702a196 
Author: WD40 <[email protected]> 
Date: Fri Apr 14 09:59:57 2017 -0500 

    Change more things 

A  about.html 
M  javascript/application.js 
D  javascript/ie6.js 

commit 0f98b1f7eda33a4e9cfaab09506aa8094044085f 
Author: WD40 <[email protected]> 
Date: Fri Apr 14 09:49:03 2017 -0500 

    Change some things 

A  index.html 
A  javascript/application.js 
A  javascript/ie6.js 

Mが変更され、そしてDが削除されます。

関連する問題