2016-12-21 154 views
4

我在Git中有一個文件夾,其中包含一些文件。文件是我的Git存儲庫的一部分。運行我的項目時,一些工作目錄出現在這個文件夾中。目錄可以有多個子目錄的任何名稱和任何嵌套級別。我想忽略出現在這個文件夾中的所有可能的子目錄,但仍然保留在我的文件夾的根目錄下的所有文件(不是目錄)。如何使用.gitignore忽略文件夾中的所有子文件夾

我試圖型態:

/ 
*/ 
/* 
/*/ 

的以上給出期望的結果無。如何實現?

許多答案解釋瞭如何忽略具有特定名稱的文件夾,例如 Git ignore sub folders。 但似乎沒有解釋如何忽略通配符的所有子文件夾。

+0

請參閱[Git忽略子文件夾](http://stackoverflow.com/a/40363384/1635042) –

+0

請嘗試此[Git忽略子文件夾](http://stackoverflow.com/a/40363384/1635042 ) –

+0

@ Mete Cantimur,pfnuesel,感謝您的鏈接。我已經嘗試過所有提供的變體,但都沒有爲我工作。我不認爲我的問題是重複的。這些鏈接上的用戶希望忽略具有特定名稱的子文件夾,而我想忽略所有可能的帶有通配符的子文件夾。 –

回答

3

試試這個:被忽略

!folder/ 
folder/* 

第一行排除頂層,第二行忽略所有子文件夾。

+1

不會'文件夾/ * /'做同樣的事情嗎? – pfnuesel

+0

@Tim Biegeleisen,謝謝。有用。所以我將其標記爲答案,儘管我自己也是這樣認識的。但就管理邏輯而言,這並不完美:假設我稍後將此文件夾移到另一個地方。我將不得不根據每個存儲庫重組來調整父文件夾的.gitignore。有沒有什麼辦法可以從相關文件夾中的.gitignore中執行它? –

+0

@BorisZinchenko如果你開始移動文件/文件夾,那麼'.gitignore'不會是你唯一會遇到的問題。你也必須處理被部分破壞的歷史以及引發這種變化的任何人的潛在衝突。 –

2

這很簡單。在以下文件夾中創建.gitignore

*/* 

I.e.忽略當前文件夾的任何文件夾中的所有文件。

+0

謝謝你的建議。剛試過這個,它不適合我。所有的子文件夾仍然可見。 –

+0

@BorisZinchenko我試過自己 - 工作正常。我有git v2.10.2。你確定你做對了嗎? – kan

+0

我檢查了我們的Git版本。我們運行Git-1.8.0。由於組織方面的原因,我們無法立即爲所有員工更新。我很感謝你的簡潔的回答,並且當我們更新到更新的Git時,一定會使用它。我不能將它標記爲答案,因爲我目前沒有合適的Git。抱歉。 –

相關問題