修复已经在git中提交的CRLF

时间:2017-03-31 16:12:45

标签: git newline

我已将git设置为core.autocrlf = true。但是,似乎已经提交的文件在存储库中有CRLF。当我修改这样的文件时,git似乎假设不需要隐式转换,因此git diff在每行的末尾显示恼人的^M。对于以CRLF签出但作为LF提交的其他文件,我在更改的行末尾看不到任何^M。如何修复存储库中有问题的文件?

我不想使用使用git filter-branch的解决方案,因为我不想重写历史记录。我想创建添加一个新的提交,修复有问题的文件。最好是我想修复单个文件,而不是一次修复所有文件。

1 个答案:

答案 0 :(得分:1)

使用您喜欢的文本编辑器将所有CRLF更改为LF。任何好的编程编辑器或IDE都有一个选项可供EOL序列使用。将其更改为Unix样式并重新格式化项目中的所有文件。然后进行提交。