2013-02-24 141 views
14

我的回購中有很多子文件夾,其中有幾個build/目錄我想在提交我的代碼時忽略。據我瞭解,有兩種方法可以忽略所有的文件夾:.gitignore中的子文件夾

  • */build/(Unix的通配符)
  • build/混帳忽略文件/文件夾的方式)

我我找到了Git ignore sub folders,但它有兩個答案,我想知道這兩種方法之間的區別是什麼(無?)是。相同的規則是否適用於文件?

回答

32

build/是正確的做法。它將忽略build目錄中的任何文件,無論這些目錄嵌套在您的回購中有多深。

*/build/意味着忽略build目錄是正好在您的回購中的一個深度。因此,例如buildfoo/bar/build內的文件不會被忽略。

如果您需要更細粒度的控制,您可以隨時添加特定的目錄以排除,但也不要使用!作爲前綴排除。

+1

我試過各種各樣的變化,並且無法在裸回購庫上獲得'git add。'來忽略該目錄的所有子目錄中的所有文件。 dirname/*,* dirname/*,* dirname/*,dirname/**','dirname/*/*'/*','dirname/*/*/*/*/*'。 – Chris 2014-11-20 17:21:01

+1

@Chris'dirname /'應該可以工作。你的意思是一個' - '回購'嗎? – Simon 2014-11-20 21:15:58

+0

謝謝@Simon,所以它一定是別的。我不是說 - 不要。我在我的目錄中運行'git init',然後'git add --all .'(帶或不帶--all),它們包含了源文件和'.gitignore',它包含了我的命名目錄下的每個非空子目錄。我正在使用1.9.4.msysgit.1現在解決它通過刪除文件夾,然後索引後重新添加它們,認爲我誤解了文檔或語法。 – Chris 2014-11-21 14:44:53

相關問題