如何使用TortoiseGit提交一个区分大小写的重命名文件?

时间:2013-07-13 06:48:59

标签: java eclipse git file-rename tortoisegit

我正在尝试使用Eclipse重命名文件的示例项目。首先,我做了一个提交并推送到GitHub。该文件为Samplemain.java。如果我将该文件重命名为SampleMain.java,如果我尝试使用TortoiseGit提交重命名的文件,我将无法提交。相反,它通过一个小对话框显示错误。

请告诉我在Git中使用区分大小写重命名文件的解决方案。 我使用的是Windows,错误对话框如下所示。 enter image description here

4 个答案:

答案 0 :(得分:4)

这是TortoiseGit的问题,而不是Git本身。如果您使用命令行提交它将起作用,我现在检查它。请注意,重命名仍然需要2 git mv个命令,但只需要一个git commit

另一种方法是在GitHub上重命名文件:在GitHub上编辑文件时,在顶部注意您可以更改名称。之后你可以从中拉出来。

答案 1 :(得分:3)

在Windows命令行(MINGW控制台)中运行以下命令。它应该解决案件检测问题。

git config core.ignorecase false

答案 2 :(得分:0)

两阶段重命名...将其命名为“z.tmp”,然后返回到您真正想要的名称。

我知道使用Subversion我必须在两步重命名之间提交,但是对于Mercurial,我不这样做。

不确定Git是否需要它。

答案 3 :(得分:0)

显然有一个实用工具:https://github.com/tawman/git-unite

我自己还没能尝试,因为作者没有提供最终的exe文件,我在尝试运行构建脚本时遇到了问题。但它似乎是一种可以更轻松地解决这个问题的实用工具。

它搜索repo和文件夹之间的名称 - 外壳不匹配,并更新repo以匹配该文件夹,然后让您只提交一个版本的文件。因此,只需将Windows资源管理器中的名称更改为您想要的名称,然后运行该实用程序即可。 (可能之后是提交 - 不确定)