簡體   English   中英

這些gitignore從忽略忽略子文件夾模式有何不同?

[英]How are these gitignore exclude-from-ignore subfolder patterns different?

我有一個gitignore文件,除了某些特定文件外,它不包含源目錄:

/src_app
!/src_app/Learning\ Module\-darwin\-x64/

!/src_app/assets/icons/mac/

“排除-忽略”學習模塊目錄與正則表達式與“-忽略-忽略”圖標正則表達式相同,只是我在學習模塊目錄中轉義了空白,而圖標目錄不需要。

奇怪的是,學習模塊目錄下的所有文件都被識別,而圖標目錄下的文件沒有被拾取。

這兩種模式之間的區別是什么,使得git可以識別一個子路徑而不能識別另一個子路徑?

關鍵是, src_app/assets 沒有被讀取的一切都src_app/assets/icons沒有找到 沒有被發現,它不能被取消忽略,這樣將掃描以查找/src_app/assets/icons/mac所以, 可能是未忽略。

解決方法是先取消忽略src_app/assets ,然后再取消忽略src_app/assets/icons

!src_app/assets/
!src_app/assets/icons/

其中第一個使Git在src_app/assets內部src_app/assets (以便它將找到icons ),第二個使Git在src_app/assets/icons內部。 src_app/assets/icons/mac的現有規則將生效。

(如果src_app/assets/和/或src_app/assets/icons/存在不應自動添加且不應抱怨的文件(即未跟蹤的文件),則必須將這些文件列出為要忽略的文件。)


旁注:在/src_app/Learning\\ Module\\-darwin\\-x64/ ,連字符前的反斜杠是不必要的(但無害)。 這些都不是正則表達式 它們都是glob模式

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM