2016-07-16 209 views
4

我正在使用Windows和PHPStorm IDE进行Web开发。在Git中猛砸,当我想补充(git add .)或commit - 会有数百警告这样的:是否存在使用的风险或缺点:git config --global core.autocrlf false

warning: LF will be replaced by CRLF in ... 
The file will have its original line endings in your working directory. 

但是,如果我做的Git Bash的以下内容:

git config --global core.autocrlf false 

没有更多这些警告。将core.autocrlf设置为false有没有风险或缺点?或者我不应该担心?正如我已经写到的,我正在使用网络应用程序(php文件,html文件,css ...,稍后将其推送到GitHub上的某个远程代表或复制到生产Linux服务器...)。对不起,我的英语不好。

回答

3

总之,它不应该有所作为。

在Windows下,标准行结尾格式是一个回车符,后跟一个换行符(简称CRLF),而在Unix世界中只使用换行符(简称LF)。这就是你的git警告你 - 它要改变它提交的文件结尾的行的类型,即使它在你的本地工作目录中没有改变。

大多数Unix系统可以很好地识别CRLF行结束符,但Windows文本编辑器偶尔会遇到Unix样式行尾(记事本是最值得注意的示例)的问题。由于git正在将转换为Unix样式,因此您应该没问题。即使不是这样,你也可能会很好,因为Windows世界中的大多数开发人员文本编辑器都可以处理Unix风格的行尾。很显然,如果你的代码库包含某种手动编码的代码生成器(或者其他的东西),它依赖于它的输入中特定的行结束类型,这可能会略微超出窗口。但是,如果你有这样一个生成器,那么说你可能知道与不同的行结束风格相关的风险/问题可能是一个安全的假设。

+0

*“对于所有的Unix系统,”Unix系统都可以识别CRLF行结束符“*为**不正确**。例如,在SLES 10上使用CRLF结尾的bash脚本会错误地抱怨未知的“^ M”字符。 –

+0

好,够公平的。 –

相关问题