在我的部分承诺的第一个承诺中,该承诺_Electronics
以大写字母开头,然后将其更改为_electronics
。
cygwin下的Git在提交新名称后忽略了大小写,因此我在目标存储库中手动更改了名称。
现在,有时会将_electronics
提交的部分更改为_Electronics
。
我做错了什么?
在我的部分承诺的第一个承诺中,该承诺_Electronics
以大写字母开头,然后将其更改为_electronics
。
cygwin下的Git在提交新名称后忽略了大小写,因此我在目标存储库中手动更改了名称。
现在,有时会将_electronics
提交的部分更改为_Electronics
。
我做错了什么?
Answers:
这将被视为2种不同的情况,但会导致您在不区分大小写的系统上出现问题。在这种情况下,请确保您正在制表符填充所有路径或文件名。此外,要在某种情况下更改名称,请执行以下操作:
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和仅更改目录的大小写
git mv file.txt File.txt
。不确定这是否是新的git功能。
它取决于core.ignorecase
配置值,该值在区分大小写的文件系统中设置为false,在Windows上的msysgit中设置为true。
core.ignorecase
如果为true,则此选项启用各种变通办法,以使git在不区分大小写的文件系统(例如FAT)上更好地工作。例如,如果目录列表在git期望“ Makefile”时找到“ makefile”,则git将假定它确实是同一文件,并继续将其记住为“ Makefile”。
默认值为false,除了git-clone(1)或git-init(1)将在创建存储库时探测并设置core.ignorecase为true。
在此回复中,有关更改Git中文件名大小写的更多详细信息。
git config --unset-all core.ignorecase && git config --system core.ignorecase false
与sudo一起使用。
我试图解决此问题,并且在Windows10上成功
假设在bitbucket TEST和test上有两个文件夹,但是当我在磁盘上克隆存储库时,它仅创建TEST,并且我想将test作为包含所有文件的git上的单个文件夹保存。
我将需要在命令行上执行以下命令git mv TEST test1 -f git mv text1 test -f git commit -m“ reaming ...” git push
现在,您将看到在bitbucket上更正了文件夹层次结构。