core.autoclrf = true是core.autocrlf = input的超集吗?

时间:2017-11-09 12:28:22

标签: git gitattributes core.autocrlf

从这里的文档:https://git-scm.com/book/en/v2/Customizing-Git-Git-Configuration#__code_core_autocrlf_code, 我可以得出结论,core.autoclrf=true完全符合core.autoclrf=input(在添加到索引时将文件转换为LF)以及在结帐时转换为CRLF。

然而,doc没有明确说明这一点,所以我想验证这是否属实。

1 个答案:

答案 0 :(得分:1)

manual中的解释更为简洁

  

将此变量设置为“true”与在所有文件上将text属性设置为“auto”并将core.eol设置为“crlf”相同。如果要在工作目录中具有CRLF行结尾且存储库具有LF行结尾,则设置为true。此变量可以设置为 input ,在这种情况下不会执行输出转换。

text属性的作用

  

此属性启用和控制行尾标准化。对文本文件进行规范化后,其行结尾将在存储库中转换为LF。

所以你的直觉是正确的。 core.autocrlf=input将所有文件规范化为索引中的LF结尾,而core.autocrlf=true则强制在工作目录中强制使用CRLF结尾。