Git警告:LF将被CRLF取代

jam*_*mes 5 git git-gui

我正在使用GIT gui.我在文件夹中的几个文件中看到此错误.我有两个选择按钮 - 解锁索引并继续.我不明白按钮的作用.我看到其他SO帖子告诉我忽略警告,但他们没有提到如何在GUI中执行此操作.请告诉我应按哪个按钮以及为什么.谢谢.

这是错误消息示例 -

Updating the Git index failed.  A rescan will be automatically started to resynchronize git-gui.

warning: LF will be replaced by CRLF in gen/com/click4tab/pustakalpha/BuildConfig.java.
The file will have its original line endings in your working directory.
(repeat above messages for other files)
Run Code Online (Sandbox Code Playgroud)

Cod*_*ard 18

设置CRLF,问题就会“消失”

# Option 1:
git config --global core.autocrlf false

# Option 2:
`git config --global core.safecrlf false`
Run Code Online (Sandbox Code Playgroud)

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

  • 我以前看过这个链接。它没有告诉我有关 GUI 选项的任何信息。 (5认同)
  • 我认为将 **autocrlf** 设置为 false 不是一个好主意。Mac 和 Windows 处理行尾的方式不同。如果完全确定我只能在 PC 上工作,我只会将它设置为 false。 (4认同)
  • 这个问题可能不是很理想,但很清楚:“请告诉我我应该按哪个按钮以及为什么。”,这是在`git gui`级别。谢谢你的回答,但它主要要求用户在 `git` 级别(不是 `git gui`)执行一些全局更改,对所有当前和未来的存储库产生永久影响,而没有任何关于实际发生的事情或最初发生的事情的解释问题的意思。您确定该命令实际上是用户(或问题的未来读者)所需要的吗? (2认同)

lxv*_*xvs 13

这不重要autocrlf,但是safecrlf。使用以下命令来抑制警告。

git config --global core.safecrlf false
Run Code Online (Sandbox Code Playgroud)

autocrlf是控制是否在add/时变换行结尾checkout,而safecrlf是控制在进行此类变换时是否警告用户。


小智 6

要在此处添加@Code Wizard的解决方案:/sf/answers/1733955891/

您还可以运行以下命令在本地设置 CRLF,仅适用于您正在处理的特定项目:

git config --local core.autocrlf false
Run Code Online (Sandbox Code Playgroud)