我试图重命名一个文件有不同的大小写,从它之前:
git mv src/collision/b2AABB.js src/collision/B2AABB.js
fatal: destination exists, source=src/collision/b2AABB.js, destination=src/collision/B2AABB.js
正如您所看到的,Git对此进行了处理。我也尝试过使用普通的旧mv命令重命名,但Git没有接收重命名(作为重命名或作为新的未跟踪文件)。
如何将文件更改为相同名称的不同大写?我在Mac OS X v10.7.3 (Lion)上,Git 1.7.9.1,使用Z shell (zsh) 4.3.15。
Vonc的回答是完全正确的,但仍然有一个潜在的情况,你的重命名操作将无法在windows git中工作:
假设你想把dir/mypath重命名为dir/mypath:
git mv dir/mypath dir/myPath
但它没有报告:
Rename from 'dir/mypath' to 'dir/mypath' failed. Should I try again? (y/n)
问题是bash已经无声地将命令行dir/myPath替换为dir/myPath,因为它已经检测到存在这样一个路径,但大小写不同。
解决方案是使用中间移动操作:
git mv dir/mypath dir/mypath_temp
git mv dir/mypath_temp dir/myPath
Vonc的回答是完全正确的,但仍然有一个潜在的情况,你的重命名操作将无法在windows git中工作:
假设你想把dir/mypath重命名为dir/mypath:
git mv dir/mypath dir/myPath
但它没有报告:
Rename from 'dir/mypath' to 'dir/mypath' failed. Should I try again? (y/n)
问题是bash已经无声地将命令行dir/myPath替换为dir/myPath,因为它已经检测到存在这样一个路径,但大小写不同。
解决方案是使用中间移动操作:
git mv dir/mypath dir/mypath_temp
git mv dir/mypath_temp dir/myPath