git 追蹤檔案更新無效
在開發專案時常遇到 .gitignore 不生效、或是檔案大小寫無法被 Git 辨識嗎?本文整理兩種常見 Git 問題的原因與三種實用解法,包含清除快取、設定大小寫追蹤與正確更名方式,幫你快速排除 Git 的煩人錯誤。
CChia1104
筆記1 分鐘閱讀
之前在做開發時很常遇到兩種 git 情況
- 更新
.gitignore後,已追蹤的檔案無法被忽略。 - 更新大小寫檔名,無法被追蹤。
.gitignore 不生效
原因是因為在 git ignore 目錄中,新建的檔案在 git 中會有緩存,如果某些檔案已經被納入了版控中,就算是加在 .gitignore 中也是不起作用的,這時候我們可以把本地快取刪除,然後再進行 git 的 commit 即可
git rm -r --cached .
git add .
git commit -m "fix: update .gitignore"這裡用 git rm -r --cached . 是所有的檔案緩存清除,也可以各別下檔案路徑。
Git 的檔案名稱大小寫追蹤
git 預設是不追蹤大小寫變更的。
- 若是遇到這問題,也可以先把緩存清掉再 commit 一次即可。
git rm -r --cached .
git add .
git commit -m "fix: update file name"- 另一種解法是直接設定讓 git 追蹤大小寫的變更。
git config --local core.ignorecase false- 最後的解法是直接透過 git 來更改檔名
git mv -f readme.md README.mdWritten by: Chia1104 CC BY-NC-SA 4.0