如何列出两个日期之间(或两次提交之间)提交中新添加的文件?我倒要看看
- 文件路径
- 提交者/提交消息
- 提交参考
这就是我使用的:
git log --diff-filter=A --name-only --pretty=oneline --abbrev-commit ref1..ref2
此外,输出很容易解析。删除--abbrev-commit
允许您将 SHA-1 用于某些工作。
git log --stat
提供了一个很好的提交摘要,其中包含更改的文件的详细信息:
commit bde0ce475144ec85a1cb4ffeba04815412a07119
Author: Stephen Holdaway <xxxxx@xxxxx.com>
Date: Thu Sep 20 13:55:12 2012 +1200
fix default rotation issue
Menus/MainMenuViewController.m | 17 +++++++++++++----
Menus/PostGameViewController.m | 14 +++++++++++++-
Menus/StatsMenuController.m | 10 +++++-----
4 files changed, 31 insertions(+), 11 deletions(-)
您可以在两个日期之间尝试此操作:
git log --since "10 Sep 2012" --until "12 Nov 2012" --stat
这在两次提交之间:
git log --stat xxxxxxx..xxxxxxx
您也可以使用git show
. 它类似于git log
但有一个--name-status
参数,可以一次性为您提供路径名和添加/修改/删除标志(请注意,git log
如第一个答案中所述,不限于新文件并且不显示状态指示器) .
$ git show --pretty=fuller --name-status HEAD^..HEAD
commit 3c92149119e69b4520b4ea317f221aade9f41b0e
Author: John Doe <xxxx@xxxxxx>
AuthorDate: Fri Nov 9 15:46:05 2012 -0600
Commit: John Doe <xxxx@xxxxxx>
CommitDate: Fri Nov 9 15:46:05 2012 -0600
Added some files, modified some other files
A src/main/java/com/test/app/NewFile1.java
A src/main/java/com/test/app/NewFile2.java
M src/main/java/com/test/app/OldFile1.java
M src/main/java/com/test/app/OldFile2.java
可能有可能获得此信息git log
(他们可能在后台使用相同的基本信息),但我还没有弄清楚。