关于git提交文件结尾问题的介绍

问题描述:因为大家在用的时候,经常出现^M的问题,也就是\r\n的事情,导致很多脚本跑不通。道理上应该在编译服务器上做掉统一过滤,但是碰巧我的编译脚本也放在git上。。。所以干脆通过工具的方式在第一个环节就解决掉

测试情景:
a.txt 内容是a,行结尾\r\n

b.txt内容是b,行结尾\n


1. 提交检出均不转换

执行:git config --global core.autocrlf false






查看效果,重新检出:





和上传前,文件结束符一致

2. 提交时转换为LF,检出时不转换

git config --global core.autocrlf input


查看效果,重新检出:



上传前,结尾是^M的文件,都被修正成了$

3. 提交时转换为LF,检出时转换为CRLF
git config --global core.autocrlf true


查看效果,重新检出:


上传前,结尾是$的文件,都被修正成了^M
 
 
结论:
不允许使用:core.autocrlf=true
强烈建议:core.autocrlf=input
有洁癖的,但自己要保证文本正确,可以使用:core.autocrlf=false
 
 

 
 
ps:常用命令
git config --get core.autocrlf
git config --global core.autocrlf input



猜你喜欢

转载自blog.csdn.net/micklf/article/details/77063129