
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ā)之路無限美好。