Windows git "warning: LF will be replaced by CRLF", 这个警告是在提醒换行符会被替换成回车换行符,不是反向警告。

272

环境:

  • Windows 7
  • msysgit

当我执行 git commit 命令时,它提示:

warning: LF will be replaced by CRLF. 

这个警告是不是反过来了?
我在 Windows 上编辑文件时,行尾是 CRLF,就像这张图片一样:
enter image description here
而 Git 为了提交到仓库中将其改为了 LF
所以我认为正确的警告应该是:

warning: CRLF will be replaced by LF. 

还可以参考https://dev59.com/FnI-5IYBdhLWcg3w9tdw和https://dev59.com/12025IYBdhLWcg3wvIco。 - devnull
2
@devnull 我的意思是警告是反向的,对吧? - Honghe.Wu
@Honghe.Wu 不,它不在Windows上。我已经编辑了我的答案如下 - VonC
22
非常好的问题,因为警告似乎是反向的。在提交时收到关于转换为CRLF的警告非常令人困惑,即使解释Git对空格的处理也无济于事,因为这个警告是反向的 - Stijn de Witt
我在一个没有更改的文件中遇到了完全相同的警告,参见 https://dev59.com/PKLia4cB1Zd3GeqPfztQ#44458163。将这个特定的文件暂存后,警告和错误得到了解决。 - maxik
显示剩余3条评论
13个回答

0
我正在玩Minecraft游戏,当我将世界文件上传到GitHub时,出现了以下错误。
当我关闭游戏后再次尝试上传时,一切正常,因为游戏使用了session.lock文件,阻止其他任务访问这些文件。

-1

只需要做简单的事情:

  1. 打开 git-hub(Shell)并导航到文件所在的目录(cd /a/b/c/...)
  2. 执行 dos2unix(有时是 dos2unix.exe)
  3. 现在尝试提交。 如果您再次遇到相同的错误。 执行上述所有步骤,除了使用 dos2unix,改为使用 unix2dox(有时是 unix2dos.exe)

-4

关闭 Visual Studio

如果你遇到了这个错误,一个简单的解决方法就是关闭 Visual Studio,然后就可以提交到主分支了,非常简单。 我之前也遇到过同样的问题,也是通过这种方式解决的。这种错误通常是因为你想要打开的文件已经在另一个程序中被打开了。


我不知道这与此处所询问的行结束问题有什么关联。你能澄清一下吗? - joanis
1
这是一个 bug,关闭 Visual Studio 后问题得到了解决。 - Indigo Softwares

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接