我们的一位开发人员的文本编辑器弄乱了 PHP 文件的行尾。我们已经尝试了所有设置,但编辑器在保存时似乎仍然将 CR-LF 替换为 LF。
当然,最明智的做法是用一个像样的编辑器替换编辑器,但我想:为什么不配置 Git 来处理行尾的差异?这就是我卡住的地方;我无法让它正常工作,我想听听你的建议。
我们 check out 的文件似乎有 CR-LF 行结尾。当我们的开发人员编辑并存储它们时,它们同样具有 LF 结尾。提交文件时,不仅行会更改,而且每一行都会被删除并重新插入。
我已将 core.autocrlf
设置为 true
。提交时,我收到一条警告,所有 LF 都将被 CR-LF 替换。该文件将在您的工作目录中具有原始结尾。但是,所有行都被删除并再次添加。当与另一个分支 merge 时,这会产生冲突。
我尝试用*.php 文本
制作一个.gitattributes
文件。与 core.autocrlf
相同的结果。
所以我的问题是:有没有一种方法可以将 Git 配置为只提交我们程序员所做的更改,而保留只有行尾发生变化的行?
最佳答案
根据我对文档的内存,你不能准确地做到这一点。
但是,配置允许您忽略特定的行结尾。
如果你想在存储库中存储所有使用 LF 行结尾的文件,运行:
git config --system core.autocrlf false
git config --system core.eol lf
您可能还想确保全局、系统和本地配置设置为您要实现的目标:
git 配置 --global -l
git 配置 --system -l
git 配置 --local -l
关于php - 如何配置 Git 以忽略对行尾的更改?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25460833/