2014-03-27 42 views
0

如何知道兩個分支之間的比較中哪些文件不存在?在Git結賬後獲取不存在的文件列表

舉例來說,如果我有主分支:

a.md 
b.txt 

dev分支:

a.md 

我怎樣才能得到一個清單,:

b.txt 

作爲刪除的文件?

我知道git diff --name-status branch..dev存在,但它列出了每個被改動過的文件。

回答

1

我不知道那個混帳默認有這樣的選擇,但你可以使用一個管道來解析使用grep的輸出。例如:

git diff --name-status brach..dev | grep ^D 

可以在一個別名把這個命令,如果你要經常使用它

0

使用comm命令,你可以提取名稱潮頭到主分支:

comm -1 -3 <(git ls-tree --name-only dev) <(git ls-tree --name-only master) 

這裏該命令被去除名稱的uniqe到DEV(-1)和在兩者(-3)常見的,從而留下在主唯一的。