34

我经常使用以下命令列出两次提交之间更改的文件:

git diff --name-only SHA1 SHA2

它给出了一个文件列表,有点像这样:

/src/example/file1
/src/example/file2
/src/example/file3

这几乎没有尽头。

我真的希望能够在每个文件旁边显示对更改状态的简要引用,指示文件是否被添加、修改或删除。

这是一个演示该概念的示例:

git diff --name-only --and-how-me-the-change-status SHA1 SHA2
/src/example/file1
M /src/example/file2
D /src/example/file3

更改状态 (A, M, D) 仅作为示例显示,我不介意这是什么,只要它是明确的。

我知道我可以使用该--diff-filter选项仅列出添加的文件、仅列出已修改的文件或仅列出已删除的文件。使用这个选项意味着我必须运行三个命令来获取三个文件名列表。这很好,但可能会更好。

我可以运行一个命令来给我上面的示例输出吗?

4

1 回答 1

85

使用, 与plus 更改文件的状态--name-status相同:--name-only

git diff --name-status SHA1 SHA2
于 2013-03-07T14:38:08.953 回答