2017-03-09 14 views
2

我们有一个存储库问题,我们看到已存在的文件,显示为未被跟踪,并且不让我们将分支重置为服务器状态,他们仍然出现。如果我们选择删除它们,它们会显示为已删除并实际删除文件。GIT Sourcetree现有文件显示为新(在Windows中区分大小写)

隐藏更改,然后使未决更改声明我们正在删除文件。隐藏这种变化使得它回归说我们正在添加文件。所有已经存在的,他们只是出现在一个糟糕的状态。

我们要保持这些文件,但他们表现出了新的和不是新的,和其他文件保持进入这个“状态”

我有成以下,但迄今为止没有任何帮助:

似乎是我们有一些机器上的文件夹作为折扣和其他折扣。尝试重命名会产生更多问题。除了删除文件,然后将它们重命名为小写以外,我的想法已经不存在了。

+0

因此,我删除了文件夹,然后重新添加小写,还确保所有git配置设置为core.ignorecase = true为全局和系统和本地。然后,我们将这些变化推到了其他分支。然后我们有人重新克隆仓库,并且它仍然显示出来。还有什么想法? –

回答

0

不要有SourceTree,但有几点可以帮助:

(1)该问题是特定于SourceTree或者它发生在其他客户端 - 命令行/ GUI?

(2)回购实际上有两个文件在名称上有区别吗?

(3)文件名在Linux上如何显示?它们与Windows中显示的大小写不同吗?如果是这样,一个可能的解决方案可能是将Linux上的文件重命名为全新的文件,将其推送到repo并克隆到Windows上的新工作树位置。

+0

这些文件也出现在Visual Studio中,有时它们有所不同。我试图删除整个文件夹结构并提交它,然后将其作为小写添加回来,然后确保所有开发人员都使用小写字母,并且还有一些仍在弹出。我认为我们的解决方案可能只是为了克隆一个新的回购协议,然后切换到该回购协议,如果每个人都这样做,希望解决问题。 –

0

我已经有过这个问题多次,git是区分大小写,窗户没有。每次我们进行抓取时,它都会用release等替换Release。不幸的是,除了手动添加它们之外,我还没有找到有效的解决方案。我不得不在GitLab实例上添加一个新文件夹,并通过它添加文件。祝你好运!如果你发现一个快速的方式,请给我留言。

相关问题