问题

比如提交代码的时候不小心把文件名 kaimo 命名成了首字母大写的 Kaimo,并且提交到了 git 仓库里面

github仓库文件改名 github更改文件夹名称_备份文件


这个时候我们把手动把 Kaimo 文件夹改成首字母小写的 kaimo

github仓库文件改名 github更改文件夹名称_github_02


我们发现 git 并没有提示该文件重命名了

github仓库文件改名 github更改文件夹名称_github_03

解决

第一步:设置 git 的大小写敏感

可以使用命令

git config core.ignorecase false

或者找到项目的隐藏文件夹 .git,找到 config 修改里面的 ignorecase

github仓库文件改名 github更改文件夹名称_首字母_04


改为 false,然后保存

github仓库文件改名 github更改文件夹名称_github仓库文件改名_05


我们就可以看到这里出现了未跟踪的文件,这个是新的 kaimo 文件夹的东西,并不是修改了 Kaimo 文件夹的名称,这样提交是有问题的。

github仓库文件改名 github更改文件夹名称_git_06

下面我演示一下错误的提交效果,提交上面的代码后,我们可以看到远程仓库出现了两个文件夹,一个首字母大写,一个首字母小写的

github仓库文件改名 github更改文件夹名称_github仓库文件改名_07


而我们本地却只有改完之后的一个小写文件夹,显然这不是我们想要的答案。

github仓库文件改名 github更改文件夹名称_git_08

第二步:备份文件夹

下面我用 Kaimo2 文件夹来讲解,这个是我重新提交的文件夹

github仓库文件改名 github更改文件夹名称_首字母_09


先备份一份 Kaimo2 文件夹,比如放一份放到桌面

github仓库文件改名 github更改文件夹名称_github_10

第三步:删除文件夹

进入到文件夹同级目录,右击鼠标,打开 Git Bash Here 控制台

github仓库文件改名 github更改文件夹名称_备份文件_11


然后执行下面命令强制删除文件夹

git rm -r Kaimo2

我们能看到删除文件的提示

github仓库文件改名 github更改文件夹名称_github_12

第四步:还原备份文件夹并改名

我们把桌面备份文件夹重命名大小写,然后放回原来路径下

github仓库文件改名 github更改文件夹名称_git_13

第五步:提交代码到 git

这个时候,就出现了两个记录,我们先 add 这个下面这个更改的

github仓库文件改名 github更改文件夹名称_github仓库文件改名_14


可以使用命令,添加文件夹

git add kaimo2

添加完之后,我们可以看到暂存的更改变成了已重命名

github仓库文件改名 github更改文件夹名称_首字母_15

下面就提交,push 上去 git 即可。效果如下:

github仓库文件改名 github更改文件夹名称_github_16