当我们在本地合并时,我们使用core.autocrlf=true
设置来正确处理行尾差异。
直接从Gitlab 的 Web 界面合并时如何控制core.autocrlf
设置?
我们观察到某些文件似乎在Changes
选项卡中完全更改,它可能与此设置有关。
附言所有开发人员在本地都有正确的core.autocrlf
设置。
所有开发人员在本地应该具有的唯一正确的core.autocrlf
设置是:
git config --global core.autocrlf false
任何 eol 转换都应仅通过.gitattributes
进行管理,该版本是源的一部分,并且可以针对文件的特定子集进行设置.
与core.autocrlf
本地设置相反,该设置由每个用户控制,并应用于每个文件(甚至是二进制文件)
这一原则反映在 GitLab 问题中,例如gitlab-org/gitlab
问题 21431
我认为这里提出的解决方案是让 Web IDE 和单个文件编辑器正确支持在存在时使用
.gitattributes
文件。
但是,如 gitlab-org/gitlab 问题 14391 所示,在执行合并请求时,WebEditor 仍然不支持此(.gitattributes
文件)。
因此,就目前而言,当MR完全在GitLab端完成时,eol没有得到适当的管理。