首页 > 解决方案 > TortoiseGit 在提交代码时列出存储库中的所有文件,因为行尾发生了变化

问题描述

TortoiseGit 在提交代码时列出存储库中的所有文件,因为行尾发生了变化。

以存储库结尾的行是 LF,并且在我的本地 Windows 机器上已更改为 CRLF。

当我尝试提交我的代码更改时,所有文件都在提交页面中列出,未更改文件的唯一区别是行结束。

如何让 TortoiseGit 只列出更改的文件并忽略行尾?

谢谢!

标签: tortoisegit

解决方案


没有一般方法可以忽略 EOL 更改。

您可以考虑在 Git 中进行自动 CRLF 转换。

推荐的方式是使用.gitattributes文件;您也可以使用https://stackoverflow.com/a/67356631/3906760指出的 AutoCRLF 方法,但是不再推荐。

例如,如果您将以下行放入其中*.txt text,这意味着所有*.txt文件都以 LF 行结尾存储在存储库中,并且在结帐时,这些文件将与 CRLF 一起存储在您的工作树中。这也意味着在提交时会自动删除 CRLF,以便文件仅与 LF 一起存储在存储库中。

您也可以尝试使用与 LF-EOL 完全兼容的编辑器。


推荐阅读