2013-03-07 56 views
26

我經常使用下面的命令列出文件兩次提交之間變化:列出所有修改過的文件使用Git之間的變化狀態提交(添加,修改,刪除)

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

這幾乎沒有結束。

我真的很希望能夠在每個文件旁邊顯示對變化狀態的簡要參考,指示文件是否被添加,修改或刪除。

下面是一個例子來說明這個概念:

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

的變化狀態(A,M,d)顯示爲一個例子而已,我不介意這是什麼這麼久因爲它是明確的。

我知道我可以使用--diff-filter選項只列出添加的文件,或者只列出修改的文件或只列出刪除的文件。使用這個選項意味着我必須運行三個命令來獲得三個文件名列表。這很好,但可能會更好。

有沒有一個命令可以運行給我上面的例子輸出?

+0

這個問題不http://stackoverflow.com/questions/1552340的副本。這是非常具體的要求如何顯示文件狀態,而不僅僅是文件列表。 – 2016-11-08 17:40:24

回答

70

使用--name-status,這是一樣的--name-only加改變文件的狀態:

git diff --name-status SHA1 SHA2 
+2

輝煌,發揮魅力! – 2013-03-07 14:41:54

+1

另外,請確保不要錯位SHA1和SHA2。它會寫'A'(加)而不是'D'(刪除),反之亦然。 – Stichoza 2015-01-23 00:21:15

+1

按照更改狀態進行排序,在Windows或Linux上: '''git diff --name-status SHA1 SHA2 | sort''' – jdforsythe 2016-12-08 13:29:47

相關問題