問題描述
之前在提交代碼時,.gitignore
沒有填寫完整,導致idea編輯器的配置文件夾.idea
被提交了
然后每次運行本地項目,都會在.idea
文件夾下生成一堆文件,這時發現問題,將.idea/
填寫到.gitignore
規則中,但是運行git status
的時候,依然能看到這些文件
解決辦法
正確的做法應該是:git rm --cached .idea -r
,然后更新 .gitignore
忽略掉目標文件,最后 git commit -m "We really don't want Git to track this anymore!"
這時問題已經解決
但問題是:為什么我增加了.gitignore里的規則卻沒有效果?
這時因為.gitignore文件只能作用於 Untracked Files,也就是那些從來沒有被 Git 記錄過的文件(自添加以后,從未 add 及 commit 過的文件)。
而我的.idea下的文件都已經被git記錄過,因此.ignore對他們完全無效,這時將文件夾的追蹤從Git數據庫中刪除,再更新.gitignore,然后提交即可
如何恢復對某個文件/文件夾的追蹤呢
將該文件/文件夾的規則從.gitignore中刪除即可