当我执行“git status”时,它会将许多文件列为实际修改后的文件,但事实并非如此。它将所有行显示为已删除,然后在差异报告的末尾再次添加相同的行。
我可以使用Windiff检查文件是否完全相同。事实上,我已经使用git几个月没有问题,今天突然出现了这个问题。我几个月前没有修改过大部分文件。
我使用Windows和SourceTree,但也使用git命令行。两者都表现出同样的问题。
我尝试的第一件事就是抛弃一切。没有任何反应,“修改过的”文件不会消失。然后还原,同样的。然后,我虽然有些腐败,所以我删除了.git / index文件,然后“git reset”。问题现在最糟糕了,我有30个“修改过”的文件,现在我有“1360”。我检查了硬盘,很好。
我不能简单地从远程再次克隆它,因为我有本地分支。
顺便说一句,我在其他项目中使用的其他存储库工作正常。
我首先关心的是知道发生了什么。我完全迷失了。
更新
\ r \ n行没有问题。我没有打开任何文件。 Windiff没有显示出任何差异。此外,我删除了分支,然后我从远程存储库中检出它,“修改”的文件仍然存在,即使丢弃所有更改或还原它们。 此外,它不只是SourceTree,我从命令行使用Git。
答案 0 :(得分:1)
第一个想法:缩进。当您在IDE中导入项目并尝试自动重新缩进时,由于缩进,所有行都可能会更改。
第二个想法:行尾。有些IDE可以在每一行上添加不同的行尾,因此git将其视为所有行的差异。
希望能帮到你。
答案 1 :(得分:0)
谢谢托尼。我添加了" text = auto"现在它已经解决了。
正如你提出的,问题就像 SourceTree App says uncommitted changes even for newly-cloned repository - what could be wrong?
然而,我很困惑,因为我在过去几个月内没有改变或编辑任何内容。我需要说我安装了Windows 10,也许它可能是相关的。
无论如何,现在它已经解决了。