1

我目前正在使用 Git,并且在我的 Windows PC 上一切正常。我将我的 autocrlf 设置为 true,据此这是正确的

https://help.github.com/articles/dealing-with-line-endings

其实我没有抱怨,它似乎工作得很好,时不时有一些警告,但我通常忽略它们。

但这实际上是做什么的呢?这是否会在执行 PULL 时添加 CR/LF,然后在执行推送时将 CRLF 更改为 LF?

所以回购中的“总是”有“只有”LF而不是CRLF的文件?

我即将使用 MAC OS X 和 Linux 在同一个存储库中开始开发,现在这就是我感到困惑的地方,根据 GitHub,它指出对于 Windows,将 Autocrlf 设置为 TRUE。

但是在 Linux / MAC OS X 上,我应该这样做吗?我知道的 Linux 不使用 CRLF。

更新

我看到关于 Stack Overflow 的各种评论不认为它是真实的,但当然我使用的是 3 种类型的系统,所以我想这就是为什么在这里推荐它的原因?

也推荐Linux?但它永远不会产生crlf。

所以我想情况是,总是让它保持真实,以防万一?

4

2 回答 2

1

在 OS X 上也设置autocrlf为。true它会做正确的事。(事实上​​,你也可以在 Linux 上设置它,它会再次做正确的事情。)


但这实际上是做什么的呢?这是否会在执行 PULL 时添加 CR/LF,然后在执行推送时将 CRLF 更改为 LF?

是的。当文件在本地签出时,它将文件转换为本地本机行尾格式,然后在提交时,它们会自动转换回规范的行尾格式 ( LF)。

于 2012-08-20T01:07:48.370 回答
0

可能有助于回答您的一些问题。

基本上,只有当您使用的编辑器不能正确处理行尾,或者抱怨很多(如 Visual Studio)时,这才真正重要。

于 2012-08-20T01:21:23.503 回答