git不区分大小写?

在我所称的_Electronics的第一个承诺中,它是以大写字母开头的,然后我将它改为_electronics

在cygwin下的Git在提交新名称后忽略了这个案例,所以我在目标回购中手动更改了名字。

现在它有时会将_electronics部分更改为_Electronics

我做错了什么?

这将被视为两件不同的事情,但会导致你在非区分大小写的系统上的问题。 如果是这种情况,请确保您制表完成任何path或文件名称。 此外,要改变一些事情的名字,这样做:

 mv file.txt temp.txt git add -A git commit -m "renaming..." mv temp.txt File.txt git add -A git commit --amend -m "Renamed file.txt to File.txt" 

这是一个明确的方式,使更改提交他们,然后崩溃提交。 做一个简单的方法是将索引和工作文件夹放在一起:

 git mv file.txt temp.txt git mv temp.txt File.txt git commit -m "Renamed file.txt to File.txt" 

这与调整目录名称有关: git mv并且只改变目录的大小写

这将取决于core.ignorecaseconfiguration值,在大小写敏感的文件系统中设置为false,在Windows上的core.ignorecase中设置为true。

core.ignorecase

如果为true,这个选项启用了各种解决方法,使git可以更好地处理不区分大小写的文件系统,如FAT。 例如,如果一个目录列表在git需要“Makefile”时发现“makefile”,那么git会认为它是真正的同一个文件,并继续记住它为“Makefile”。

默认值是false,除了git-clone(1)或者git-init(1)会在创build仓库的时候探测和设置core.ignorecase为true。

这很容易:

 git mv Electronics electronics -f git commit -m "That was easy!" 
 git config --system core.ignorecase false