【问题标题】:Multiplatform development and autocrlf option in GitGit 中的多平台开发和 autocrlf 选项
【发布时间】:2012-08-15 09:39:49
【问题描述】:

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

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

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

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

所以“总是”在 repo 中有“ONLY”LF 而不是 CRLF 的文件?

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

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

更新

我在 Stack Overflow 上看到各种 cmet 不使用它,但我当然使用 3 种类型的系统,所以我想这就是这里推荐它的原因?

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

所以我认为情况是这样,始终保持真实,以防万一?

【问题讨论】:

    标签: linux macos git github github-for-mac


    【解决方案1】:

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


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

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

    【讨论】:

      【解决方案2】:

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

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

      【讨论】:

        猜你喜欢
        • 2011-07-25
        • 1970-01-01
        • 2013-06-09
        • 1970-01-01
        • 2017-11-26
        • 1970-01-01
        • 1970-01-01
        • 2012-02-13
        相关资源
        最近更新 更多