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.ignorecase
configuration值,在大小写敏感的文件系统中设置为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