Git删除不同大小写的相同文件

问题描述:

由于某些必需品的原因,我更改了.git/configignorecase = false以区分大小写。然后将文件从大写重命名为小写。例如,我手动更名Account_Model.phpAccount_model.php,甚至其他分支。由于不同的情况,git使得Uncommitted changes,然后我提交了小写的新文件(git假设小写的新文件)。Git删除不同大小写的相同文件

现在我陷入困境。我为需要部署的服务器提供回购,目录创建2个文件。一个是Account_model.php(我想要的),另一个是Account_Model.php

他们成为单独的两个文件!但回到我的本地,我只在目录中看到1个文件。 (因为那个,我不能删除大写的那个)

如果我改变其中的一些,那么两个不同情况的文件会同时提醒。差异显示相同的修改。

Two file with same diff

但我只能看到只有一个目录。

Only 1 file in the directory

我不能删除大写之一。 (如果可以,我觉得小写人会太删除。

有一种方法可以通过在命令改变的情况下,我知道,我选择了错误的方法。

所以,我怎么能对付两个案卷,并保留更改(只有一个文件用小写)永远?

太谢谢你了。

OS X的文件系统,默认情况下,不区分大小写的。所以,如果你有一两个文件Git仓库具有相同的名称,但不同的情况下,您将遇到现在的问题。

一个简单的解决方法是使用“磁盘工具”创建区分大小写的磁盘映像,将该磁盘映像克隆到该磁盘映像上,修复该问题并推送修复程序。

为了使磁盘映像...

  • 打开磁盘工具。
  • 做文件 - >新图像 - >空白图像。
  • 将格式设置为OS X扩展(区分大小写,日志式)。

enter image description here

它会自动安装和/Volumes等着你。克隆后,您应该可以看到这两个文件,并可以随心所欲地进行操作。

+1

好吧!我最终按照自己的方式创建了磁盘映像(然后可以看到具有不同大小写的文件),克隆所有文件,删除小写的文件,将其从大写更名为小写,并将其推送。谢谢你。 Benyi