如何列出给定提交之间 created/removed 的文件

How to list files that have been created/removed between given commits

是否有一种简单的方法来列出在某些任意提交之间从给定分支中添加and/or删除的文件?

git diff --stat commit1..commit2

回答

git log 0be3204 61bd4f0 --diff-filter=AD --summary --oneline

输出

0be3204 Delete two files.
 delete mode 100644 test2.txt
 delete mode 100644 test3.txt
f7f92cc Add a new file
 create mode 100644 test3.txt
3bcb423 Delete one file.
 delete mode 100644 test.txt
61bd4f0 Create two files.
 create mode 100644 test.txt
 create mode 100644 test2.txt

说明

  • git log 列出您的提交。
  • 0be3204 61bd4f0表示开始和结束提交范围。
  • --diff-filter=AD 表示只显示 added/deleted 的文件。单独使用 D 字符仅列出已删除的文件。
  • --summary描述新增、删除、重命名和复制的文件。
  • --oneline(可选)在结果中包含 SHA1 和提交消息。