我们有一个从 subversion 导出到 git 的存储库。此存储库供 Mac、Linux 和 PC 用户使用。毋庸置疑,行尾一团糟。有些文件以 CRLF、LF 或 CR 结尾,有些文件在一个文件中混合了这两种或三种。
添加 autocrlf = true
似乎可以稍微解决问题。然而,差异有时会变得很奇怪,即对文件的一行编辑会使差异中的所有行都发生变化(我假设这是由于文件的行尾都被重写了),有时一行编辑到文件工作正常。
是否有网站,或者有人可以解释一下我们如何解决这个问题?是否有我们必须设置的 git 设置,或者我们是否必须对所有文件进行批量更新以具有特定的行结尾或什么?
任何帮助将不胜感激,因为它一团糟!
(下面的 stackoverflow post 看起来可能有帮助,尽管它没有回答当我们有另一个 mac 或 pc 或 linux 用户提交另一个补丁时会发生什么)
最佳答案
这个相关的 SO 问题会引起您的兴趣:
Trying to fix line-endings with git filter-branch, but having no luck
这里是 a link来自 Github 的类似建议。
此外,正如 Greg Hewgill 的帖子中提到的,验证 future 的提交者是否使用正确处理新的行结束策略的编辑器是明智的。
当您说“添加 autocrlf = true 似乎可以稍微解决问题。”我假设这是使用 .gitattributes
完成的.
关于git - 澄清/清理 GIT 中的行尾问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1522933/