我不小心在我的主计算机的git存储库上设置了core.autocrlf=false,在我的笔记本电脑的git存储库中设置了core.autocrlf=true。我改变了设置,但现在有问题了。显然,我使用的是SourceTree、Qt和git。我正在用新代码从笔记本移动到主计算机,并使用格式补丁和am。
使用git 应用补丁最初由于core.autocrlf设置失败。
error: patch failed: backupjob.cpp:152
error: backupjob.cpp: patch does not apply然后我使用git -忽略--空间更改--忽略--空格成功地将用制作的补丁迁移到主计算机上。然而,现在,当我在主计算机上修改代码时,它会看到前面所有的代码仍然以LF而不是CRLF结尾,因此看到所有以前的代码都被修改了,而不仅仅是我更改的代码(见下面的屏幕截图)。
我解释得对吗?补救这种情况的最好方法是什么?谢谢!

发布于 2022-09-11 19:30:24
我弄明白了为什么我的IDE显示所有修改过的行在git diff中再次出现。在使用git am应用补丁之后,我在IDE中更新了项目IDE自动修改所有LF行尾,并将其替换为CRLF。然后,Git将所有行显示为再次修改。然后,我承诺了新的线结束和一切都是它应该是。这是一种替换行尾的替代方法,而不是使用git重命名。我更喜欢它,因为它显示了哪些行被修改了,而不是每一行都被重命名了。
https://stackoverflow.com/questions/73086104
复制相似问题