warning: LF will be replaced by CRLF in ** 的原因及解决办法

今天在使用git add 命令的时候,弹出了一个警告 warning: LF will be replaced by CRLF in ******(具体的一个文件)

原因

LFCRLF其实都是换行符,但是不同的是,LF是linux和Unix系统的换行符,CRLF是window 系统的换行符。这就给跨平台的协作的项目带来了问题,保存文件到底是使用哪个标准呢? git为了解决这个问题,提供了一个”换行符自动转换“的功能,并且这个功能是默认处于”自动模式“即开启状态的。
这个换行符自动转换会把自动把你代码里 与你当前操作系统不相同的换行的方式 转换成当前系统的换行方式(即LFCRLF 之间的转换),这样一来,当你提交代码的时候,即使你没有修改过某个文件,也被git认为你修改过了,从而提示"LF will be replaced by CRLF in *****"

解决

最简单的一种办法就是把自动转换功能关掉即可。
输入命令 :git config core.autocrlf false (仅对当前git仓库有效)
git config --global core.autocrlf false (全局有效,不设置推荐全局)

然后重新提交代码即可。

================ 2021年3月30日15点14分 更新 ============
这篇博客大概是大二的时候写的了,当时对git也是初步接触,现在回过头来看,其实这个warning无伤大雅。在实际编程中,一般来说warning级别的警告都是可以忽略的,这个警告也是。
如果你是一个强迫症,非要去掉所有warning,也是可以。如果你可以保证你的代码不会跨平台开发,(比如你和你的合作者用不同的系统进行开发时,关掉这个自动转换的功能可能会导致代码显示异常),你可以设置关掉自动转换的功能。
当然,结合实际情况来说,你不能保证你的所有代码都不会跨平台开发,因为你不能保证你的合作者用的是跟你一样的系统,这个时候,最好就是只针对当前仓库设置,你只要保证当前仓库的代码不会跨平台开发就行。
就我现在来说,比较建议忽略这个警告。

  • 158
    点赞
  • 233
    收藏
    觉得还不错? 一键收藏
  • 23
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 23
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值