Git:在Windows上重命名目录(仅限大小写)

时间:2016-04-22 17:40:25

标签: windows git rename

我想在Windows系统上重命名由Git版本化的目录(更改目录名称的大小写):

$ git mv docs DOCS
Rename from 'docs' to 'DOCS/docs' failed. Should I try again? (y/n) n
fatal: renaming 'docs' failed: Permission denied

我也尝试过使用force-option - 但结果相同:

$ git mv --force docs DOCS
Rename from 'docs' to 'DOCS/docs' failed. Should I try again? (y/n) n
fatal: renaming 'docs' failed: Permission denied

由于某种原因,Git失败了,因为它认为DOCS已经是一个现有目录,并且该目录应该在其中移动。我知道我可以重命名&使用临时目录名称提交,然后重命名&修改提交到最终名称,但是有没有办法告诉Git我不想进入任何其他目录?

3 个答案:

答案 0 :(得分:17)

您可以尝试分2步完成。

$ git mv docs DOCS2
$ git mv DOCS2 DOCS

它会起作用

答案 1 :(得分:0)

这不是git的限制,而是Windows和NTFS的限制。文件系统不相信简单的案例更改会发生任何变化(实际上无法进行更改)。尝试重命名(使用临时名称)然后提交,或在非Windows计算机上更改它。

答案 2 :(得分:-1)

由于在敏感的窗口中,您无法将文件重命名为相同的字母。 (文档== docs [忽略大小写])

你可以从git bash开始,因为git bash是cygwin,它的区分大小写,因为它是一个unix模拟器。

这是git bash的演示。 (Windows 7的) enter image description here