[英]git ignores too many files
我有文件結構:
$ ls xtest/
arch.gz.keep
raq.gz.keep
qq
$ ls xtest/qq/
ww.gz.gitkeep
aa.keep
我的.gitignore
/xtest/*
*.sql
*.gz
*.zip
*.log
!*.keep
!*.gitkeep
!*.dist
!*.dist.*
git status
文件未跟蹤:
xtest/.gitkeep
xtest/.keep
xtest/arch.gz.keep
對我來說,我還需要跟蹤:
xtest/qq/ww.gz.gitkeep
xtest/qq/aa.keep
git --version 1.9.1 on Ubuntu 14.04
在qq
文件夾中,如果僅包含ww.gz.gitkeep
和aa.keep
或者您希望qq
文件夾中的所有文件均受git版本控制,只需刪除.gitignore
中的/xtest/*
,因此.gitignore
如下所示:
*.sql
*.gz
*.zip
*.log
!*.keep
!*.gitkeep
!*.dist
!*.dist.*
通過在.gitignore
中包含/xtest/*
,您將指示Git忽略xtest/qq
。 它永遠不會下降到該目錄,也永遠不會注意到您不想忽略某些匹配*.keep
文件。 添加以下選項之一,以使xtest/qq
不被忽略:
!/xtest/qq/
!/xtest/*/
后者會忽略xtest
所有目錄,前者只是qq
。
我找到了解決方案,關鍵是我想忽略從dir'xtest'->'/ xtest /'開始的每個文件/路徑,除了一些放置在/ xtest /中的文件之外,我該如何添加不帶點的文件(所有擴展名-less文件)到gitignore文件?
也許對某人有幫助:忽略dir /xtest/
任何文件,但忽略任何目錄,而不是某些特定文件:
/xtest/**/*
!/xtest/**/*/
/xtest/**/cache/*
*.sql
*.gz
*.zip
*.log
!*.keep
!*.gitkeep
!*.dist
!*.dist.*
即使存在* .keep,*。gitkeep等,cache /的子目錄也將始終被忽略,但在cache /的第一個深度中不會被忽略,並且除*外,幾乎所有文件都將在其他目錄中忽略(進入/ xtest /)。保持* .gitkeep等
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.