使用.gitignore忽略文件或者文件夾及其失效解決方法


git如果需要忽略某個文件夾,可以在初始化之后,在倉庫根目錄下創建一個.gitignore文件,添加需要忽略的文件和文件夾即可。
我們也不需要從頭寫.gitignore文件,GitHub已經為我們准備了各種配置文件,只需要組合一下就可以使用了。所有配置文件可以直接在線瀏覽:https://github.com/github/gitignore
例如排除Windows自動生成的垃圾文件和倉庫的APP1子文件夾:

# Windows:
Thumbs.db
ehthumbs.db
Desktop.ini
#Directories
APP1/

如果已經提交過的文件或者文件夾怎么辦?此時更改.gitignore文件對已經提交的文件是無效的。
2.1 首先,編輯.gitignore文件。
2.2 然后如果是單個文件,可以使用如下命令從倉庫中刪除:
git rm --cached logs/xx.log
如果是整個目錄:
git rm --cached -r logs
如果文件很多,那么直接
git rm --cached -r .
如果提示某個文件無法忽略,可以添加-f參數強制忽略。
git rm -f --cached logs/xx.log
2.3 然后
git add .
git commit -m "Update .gitignore"

把被忽略的某個文件強制添加回去:
git add -f filename

ignore規則檢查:
git check-ignore

一些規則
a# 忽略所有 .a 結尾的文件
!lib.a# 但lib.a 除外
/TODO# 僅僅忽略項目根目錄下的 TODO 文件,不包括 subdir/TODO
build/# 忽略build/ 目錄下的所有文件
doc/.txt# 會忽略 doc/notes.txt 但不包括 doc/server/arch.txt

 

查看所有已被忽略的文件和目錄

git clean -ndx


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM