git 修改大小写远程分支失败

先说原因: windows大小写不敏感导致   最近由于项目需求,改回了windows开发环境,之前一直是 mac 开发环境,结果在windows环境下使用 git 时, 把某个之前大写的文件夹名称改成了小写的文件夹名称并成功提交,然后协作的同事拉取分支就出问题了。   现象:本地分支大写改为小写并成功提交后,远程分支并未真正修改,其它协作小伙伴拉取分支后出现问题   网上搜了一下,然后说将git  配置成大小写敏感
git config core.ignorecase false

 

表面上解决了问题,实则有大坑。 不要通过 
git config core.ignorecase false
去关闭 git 大小写敏感,因为会导致其它分支合并出现未覆盖冲突,会一脸蒙B。   “修改远程分支大小写正确做法”:
  1. 先在本地分支备份
  2. 本地分支 rm 删除需要修改文件或文件夹并
  3. 将此次rm删除提交至远程分支
  4. add 将原备份的添加回本地分支
  5. 提交此次添加 add 至远程分支
  如果你之前已经通过修改后提交了,导致了一些其它的问题。请按以下步骤复原
  1. 找到之前的版本 "commit id" 即通过 git log 命令找到最近未修改并状态正常的分支
  2. 回滚到此版本 git reset --hard "commit id"

 

由于大小写文件修改导致切换分支时显示 有未跟踪的文件无法切换分支 可以使用 -f 强制切换到目标分支 git checkout -f 目标分支   最后,按 “修改远程分支大小写正确做法”  

上一篇:网摘


下一篇:代码差异对比之git diff详解!