經(jīng)測試發(fā)現(xiàn),若要忽略一個文件夾下的部分文件夾,應(yīng)該一個一個的標(biāo)示。可能有更好的方法。
若test下有多個文件和文件夾。若要ignore某些文件夾,應(yīng)該這個配置.gitignore文件。若test下有test1,test2,test3文件。要track test3,則.gitignore文件為:
test/test1
test/test2
!test/test3
若為:
test/
!test/test3 ,則不能track test3。
Git 中的文件忽略
1. 共享式忽略新建 .gitignore 文件,放在工程目錄任意位置即可。.gitignore 文件可以忽略自己。忽略的文件,只針對未跟蹤文件有效,對已加入版本庫的文件無效。
2. 獨(dú)享式忽略針對具體版本庫 :.git/info/exclude針對本地全局: git config --global core.excludefile ~/.gitignore
忽略的語法規(guī)則:
(#)表示注釋
(*) 表示任意多個字符;
(?) 代表一個字符;
([abc]) 代表可選字符范圍
如果名稱最前面是路徑分隔符 (/) ,表示忽略的該文件在此目錄下。
如果名稱的最后面是 (/) ,表示忽略整個目錄,但同名文件不忽略。
通過在名稱前面加 (!) ,代表不忽略。
例子如下:
# 這行是注釋
*.a # 忽略所有 .a 偉擴(kuò)展名的文件
!lib.a # 但是 lib.a 不忽略,即時之前設(shè)置了忽略所有的 .a
/TODO # 只忽略此目錄下 TODO 文件,子目錄的 TODO 不忽略
build/ # 忽略所有的 build/ 目錄下文件
doc/*.txt # 忽略如 doc/notes.txt, 但是不忽略如 doc/server/arch.txt
修改.gitignore文件
原因是.gitignore只能忽略那些原來沒有被track的文件,如果某些文件已經(jīng)被納入了版本管理中,則修改.gitignore是無效的。那么解決方法就是先把本地緩存刪除(改變成未track狀態(tài)),然后再提交:
git rm -r --cached .
git add .
git commit -m 'update .gitignore'
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。