3 回答

TA貢獻(xiàn)1884條經(jīng)驗(yàn) 獲得超4個(gè)贊
您處于不區(qū)分大小寫的環(huán)境中。此外,如Git所理解-A的mv那樣,添加no 將不會(huì)照顧到remove的一面。警告!執(zhí)行此操作時(shí),請(qǐng)確保沒(méi)有其他更改或未跟蹤的文件,否則它們將作為更改的一部分得到落實(shí)! git stash -u首先,執(zhí)行此操作,然后再執(zhí)行g(shù)it stash pop。繼續(xù):要解決此問(wèn)題,請(qǐng)執(zhí)行以下操作:
mv foo foo2
git add -A
git commit -m "renaming"
mv foo2 FOO
git add -A
git commit --amend -m "renamed foo to FOO"
這是更改工作目錄,提交然后折疊2個(gè)提交的引出方式。您可以只在索引中移動(dòng)文件,但是對(duì)于git的新手來(lái)說(shuō),它對(duì)發(fā)生的事情可能不夠明確。較短的版本是
git mv foo foo2
git mv foo2 FOO
git commit -m "changed case of dir"
如其中一項(xiàng)注釋中所建議,您還可以進(jìn)行交互式重新編排(git rebase -i HEAD~5如果在5次提交之前引入了錯(cuò)誤的案例)來(lái)修復(fù)該案例,而不會(huì)在歷史記錄中的任何位置出現(xiàn)錯(cuò)誤的案例。如果要執(zhí)行此操作,則必須小心,因?yàn)閺哪菚r(shí)起的提交哈希值將有所不同,其他人將不得不根據(jù)分支的最近歷史重新建立或重新合并其工作。

TA貢獻(xiàn)1860條經(jīng)驗(yàn) 獲得超8個(gè)贊
您要將選項(xiàng)設(shè)置core.ignorecase為false,這將使Git注意本機(jī)不支持它的文件系統(tǒng)的大小寫。要在您的倉(cāng)庫(kù)中啟用:
$ git config core.ignorecase false
然后,您可以使用來(lái)重命名該文件,git mv它將按預(yù)期工作。

TA貢獻(xiàn)1859條經(jīng)驗(yàn) 獲得超6個(gè)贊
我能夠通過(guò)使用臨時(shí)文件名使用git 1.7.7解決此問(wèn)題:
$ git mv improper_Case improve_case2
$ git mv improve_case2 improve_case
$ git commit -m "<your message>"
- 3 回答
- 0 關(guān)注
- 754 瀏覽
添加回答
舉報(bào)