git文件名大小写问题

问题

当我们手动修改文件夹名称的大小写时,github上出现了两份文件,一份大写命名,一份小写命名。

后来不如怎么git addgit commit都无法改变上面的情况。

原因

  • git 本身是对大小写不敏感的
  • mac和windows默认也是对文件名不区分大小写的

所以,默认情况下如果你本地把文件夹小写修改为大写然后提交,会导致github上存在一份大写和一份小写的文件夹。

如何正确的修改文件名大小写?

修改文件名的操作在git中类似于unix操作系统的文件操作。

git使用git mv命令用来重命名文件:

git mv old_filename new_filename

处理已存在错误操作的情况

如果修改名字时没有使用git mv命令,并且该文件也被git push到远程仓库了。那么就需要做下面几件事:

  1. 在github删除错误的分支
  2. 本地执行git rm -r --cached . (注意有个点)
  3. 然后重新git addgit commitgit push就可以了。

未发生之前处理

如果您还没有发生大小写导致的问题,可以通过一下命令关闭忽略大小写

1
$ git config --global  core.ignorecase false