今天在添加文件到仓库时候,突然发现有一个文件名本应该是小写,结果搞成了大写,所以就直接找到该文件进行重命。紧接着,git add ., git commit -m 'xx',咦?发现nothing to commit, working tree clean。很明显是没有需要提交的文件,仓库是最新的。奇怪,我已经修改文件名字了啊?百思不得奇解。于是,立马网上搜索,终于找到解决办法。
原来,
git默认不识别文件(夹)名大小写的,所以大小写转换是不会被检测到的。那么我们有两种解决办法。
1.对某个文件(夹)进行强制转换名字。
git mv --force 原文件(夹) 转换后的文件(夹)
可万一我们有很多需要修改的文件怎么办?总不能将上述命令一条一条执行吧。那么就有第二种解决办法。
2.修改git仓库配置
找到git仓库(.git文件夹)中config文件,将
ignorecase = true改为 ignorecase = false即可,即忽略大小写改成关闭。
现在我们用第一种方法测试下。先添加test.txt,再重命名Test.txt,再次进行添加,发现是最新的,再进行强制添加,就可以添加进去了。
第二种方法效果一样,本地已测试。我就不贴图了。
注:文件夹修改和文件修改一样。