Git在Windows下 自动转换换行符 LF CRLF 的解决方案

遇到的问题

很多时候我们做开发是在Windows下,然后需要部署到Linux环境,但他们的换行符是不一样的,而Git默认的设置会开启转换,也就是文件在Git存储的时候都是LF ,然后我们在Win下拉代码,就会自动转换成CRLF,如果我们需要在Win下做调试,就很麻烦,而如果我们关闭自动转换,在代码提交的时候就会遇到问题,有什么更优解呢?

解决方法

使用 .gitattributes 文件指定文件的换行符格式,可以在不同操作系统下保持一致。例如,* text=auto 表示 Git 自动检测文件类型并进行转换。

.gitattributes 文件是用来指定 Git 版本库中的文件属性,主要包括文件类型和换行符等。这个文件,我们可以自定义 Git 对特定文件的处理方式,我们可以用它来解决这个问题。

指定换行符格式:

*.sh eol=lf

上面的代码表示,在 Git 版本库中,所有的 Shell脚本文件将强制使用 LF 格式的换行符

操作步骤

1.指定.gitattributes 文件 我这里以全局配置为例

在 Git 配置文件中设置 core.attributesfile 属性:

git config --global core.attributesfile ~/.gitattributes_global

~/:表示当前的用户目录下,比如C:\Users\xxx,/home/xxx

2. 填写.gitattributes_global内容

*.sh eol=lf

然后就大功告成啦,接下来拉代码,所有的Shell脚本都是LF换行符,这下在WIn下推送脚本不用担心这个问题了

总结

相信还是有不少小伙伴也有Win下开发然后需要在Linux环境做调试的需求,比如说脚本推送、Android开发等,可以通过以上方案解决换行符的问题。
.gitattributes还有其他的一些功能,我们可以加以利用解决生产中的一些细节需求。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值