今天 RD 遇到要將原本 Curl.php 的檔案改名成 curl.php,但是在 commit 的時候一直判別為原本的 Curl.php,無法修改檔案名稱大小寫於是乎上傳了兩個相同名稱的 curl.php & Curl.php
結果 commit 後只上傳了 curl.php,而 Curl.php 卻無法 commit 進去 git 倉庫
這是因為在 Git 的 Windows 和 MacOS 的 File system 底下會將 “名稱相同” 但大小寫不同的檔案辨認為同一個檔案,如果你需要修改大小寫檔名的時候就會無法 update,只有在 Linux 才會區別大小寫不同為不一樣的檔案。
針對這個問題 git 也有提供相對應的解法:ignorecase
$ git config -l | grep ignorecase core.ignorecase=false # git config --global core.ignorecase true 忽略大小寫 $ git config --global core.ignorecase false 強制區分大小寫 # 再次 commit curl.php & Curl.php $ git add . $ git status On branch master Initial commit Changes to be committed: (use "git rm --cached <file>..." to unstage) new file: Curl.php new file: curl.php
這是使用 git 常見遇到的狀況,建議都使用 core.ignorecase=false 去區分大小寫