2013-11-27 64 views
5

使用git list-files爲我提供了內部跟蹤的目錄和文件。是否有像這樣的命令:如何讓git列表只在一個文件夾中被跟蹤的目錄?

git list-directories 

或類似的東西,只列出跟蹤的非空非遞歸目錄名稱?

+2

可能不是。 Git跟蹤文件,而不是目錄。你可能會以某種方式從'list-files'命令中獲取信息,並定義一個你想要的git別名。 – Ajedi32

+0

@ Ajedi32謝謝,那麼我會這樣做。 – tmaric

+0

很酷。一旦你找出答案,一定要在這裏發表一個答案,以便將來可能有同樣問題的任何人的利益。 – Ajedi32

回答

7

我覺得這會給你想要的東西:

git ls-files | xargs -n 1 dirname | uniq

因此,採取的git ls-files輸出和管道將進入dirname,然後uniq結果。這似乎在本地爲我工作。

+0

我會做一個sed,'... | sed s,/ [^ /] * $ ,, | uniq',避免'xargs -n 1'對我來說似乎是一個很好的經驗法則。 – jthill

+1

@CDub:這也給出了子目錄。雖然仍然有用。 – tmaric

+1

爲什麼你不想要子目錄? – CDub

相關問題