解決 Git 默認(rèn)不區(qū)分文件名大小寫的問題

Git

不得不說 Git 默認(rèn)不區(qū)分文件名大小寫真是一個(gè)大坑,由于之前的項(xiàng)目目錄比較亂,項(xiàng)目下的文件夾命名都不規(guī)范,這兩天一直在整理,然后今天從服務(wù)器將項(xiàng)目重新 clone 下來后發(fā)現(xiàn),之前將所有文件名首字母改成大寫的改動(dòng)全部沒變,本地又測(cè)試了一下后發(fā)現(xiàn) Git 提交文件名稱默認(rèn)是不區(qū)分大小寫的,之前的整理又得重新做一遍,下面就分享一下怎么解決這個(gè)問題。


  • 當(dāng)你創(chuàng)建一個(gè)倉(cāng)庫(kù)后,添加一個(gè)文件叫 README.md ,然后再提交推送到遠(yuǎn)程倉(cāng)庫(kù)。

  • 然后你在本地將剛才的文件名修改為 readme.md ,接著你去提交,發(fā)現(xiàn)沒有任何改動(dòng)可以提交。

  • 所以 Git 默認(rèn)對(duì)于文件名大小寫是不敏感的,所以上面雖然修改了文件名大小寫,但是 Git 并沒有發(fā)現(xiàn)有任何的改動(dòng)。

解決辦法

  • 打開終端 cd 到本地項(xiàng)目的 Git 倉(cāng)庫(kù)下,輸入以下命令來配置 Git 使其對(duì)文件名大小寫敏感。
git config core.ignorecase false
  • 修改完成后,當(dāng)你修改文件名大小寫時(shí),Git 就會(huì)提示有提交信息了。

  • 但是這時(shí)候如果直接提交推送的話,會(huì)出現(xiàn)一個(gè)情況,本地倉(cāng)庫(kù)明明只有一個(gè)文件,并且文件名改成了小寫 readme.md 。

本地倉(cāng)庫(kù)
  • 但是遠(yuǎn)程倉(cāng)庫(kù)上大寫的 README.md 卻沒有被刪除,居然同時(shí)存在了,并且 Git 也沒有提示任何的提交信息,這個(gè)非常之坑。
遠(yuǎn)程倉(cāng)庫(kù)
  • 更加坑爹的是當(dāng)你把本地倉(cāng)庫(kù)刪掉后,重新從遠(yuǎn)程倉(cāng)庫(kù) clone 下來發(fā)現(xiàn),還是只有小寫的 readme.md 這一個(gè)文件。
本地倉(cāng)庫(kù)
  • 至于為什么會(huì)這樣,我也不知道,只能等待大神來解釋一下,我的解決辦法就是先將原來的大寫文件 README.md 從遠(yuǎn)程倉(cāng)庫(kù)刪除,然后再將修改后的 readme.md 添加進(jìn)去再提交推送。

希望有大神能夠有其他更有效的解決辦法。

將來的你,一定會(huì)感激現(xiàn)在拼命的自己,愿自己與讀者的開發(fā)之路無限美好。

我的傳送門: 博客簡(jiǎn)書 、微博 、GitHub

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容