Sourcetree 说未暂存更改但命令行没有

Sourcetree says unstaged changes but command line doesn't

问题

我遇到了一个烦人的问题,我的 Sourcetree 总是认为我有 4 个输出更改,但命令行没有。

尝试次数

我无法重置、强制清理、强制结帐、更改为干净的新分支或任何类似的操作来删除这些文件。一旦这些文件出现,无论分支如何,它们总是存在的。如果我更改、添加或删除不同的文件,它们会在 Sourcetree 和 git.

中正确显示

我看过 非常相似的线程,但很大的不同是它们的输出甚至没有显示任何变化。

视觉

附加信息

建议

除了删除可能有效或无效的整个存储库文件夹之外,任何人都可以想出另一种方法来删除这些吗?

谢谢,

解决方案

 git config core.fileMode false

说明

这似乎是与 core.fileMode 设置相关的问题。我开始另外遇到这个问题的相反情况(我的 Cygwin 终端也开始显示未暂存的更改),并且 git 对其中一个文件的差异说明:

old mode 100644
new mode 100755

解决这个问题的方法是关闭该配置,这似乎可以解决这两个问题。