解决warning: LF will be replaced by CRLF in方法

在windows下面提交和linux提交的换行符不一样

windows中的换行符为 CRLF 

而在linux下的换行符为LF,

在windows下直接回车就会出现这个提示,修改的办法是把 core.autocrlf 设置成false

解决办法:

git config --global core.autocrlf false

 

core.autocrlf

假如你正在Windows上写程序,又或者你正在和其他人合作,他们在Windows上编程,而你却在其他系统上,在这些情况下,你可能会遇到行尾结束符问题。这是因为Windows使用回车和换行两个字符来结束一行,而Mac和Linux只使用换行一个字符。虽然这是小问题,但它会极大地扰乱跨平台协作。

Git可以在你提交时自动地把行结束符CRLF转换成LF,而在签出代码时把LF转换成CRLF。用core.autocrlf来打开此项功能,如果是在Windows系统上,把它设置成true,这样当签出代码时,LF会被转换成CRLF:

$ git config --global core.autocrlf true  

<b>Linux或Mac系统</b>使用LF作为行结束符,因此你不想 Git 在签出文件时进行自动的转换;当一个以CRLF为行结束符的文件不小心被引入时你肯定想进行修正,把core.autocrlf设置成input来告诉 Git 在提交时把CRLF转换成LF,签出时不转换:

$ git config --global core.autocrlf input  

这样会在Windows系统上的签出文件中保留CRLF,会在Mac和Linux系统上,包括仓库中保留LF。

如果你是<b>Windows</b>程序员,且正在开发仅运行在Windows上的项目,可以设置false取消此功能,把回车符记录在库中:

$ git config --global core.autocrlf false  

最近做一个项目,发现和一个朋友的代码有冲突,经过细致观察,是由于换行符导致。

我的环境是windows,但同事环境是mac

解决办法:我本地和同事保持一致用\n

步骤1:修改git的自动换行转换为false,防止从git拉代码下来自动转成\r\n

git config --global core.autocrlf false

步骤2:设置idea的codestyle

 

之前网上找到另外一个案例,文件内容没修改但是status显示modified的

原因是git检测文件权限的问题,解决办法:

在设置git config --global core.autocrlf false之后,把git diff仍然提示LF will be replaced by CRLF的代码删除,重新从git下载。

参考链接:

https://www.jianshu.com/p/547e4a4d895e

https://blog.csdn.net/xuyangyang0182/article/details/79638331

  • 13
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值