Git的格式化与空白

1) 问题的产生

    格式化与空白是在跨平台情况下,多人协作开发时,遇到的令人头疼的细小问题
    由于IDE的不同或者Windows程序员在跨平台项目中的文件行尾加入了回车换行符,这个细微的空格变化会不经意地进入大家合作的工作或提交的补丁中,在这种情况下,就可能会遇到行尾结束符问题
    这是因为Windows使用回车和换行两个字符来结束一行,而Mac和Linux只使用换行一个字符。虽然这是小问题,但它会极大地扰乱跨平台协作

2) CRLF

    CRLF是Carriage-Return Line-Feed的缩写,意思是回车换行,也就是回车(CR, ASCII 13, \r) 换行(LF, ASCII 10, \n)
    这两个ACSII字符不会在屏幕有任何输出,在Windows中它被用来标识一行的结束;而在Linux或Mac系统中只有换行符来标识一行的结束

3) 解决办法

(0) Git配置

    Git可以在你提交代码时自动地把行结束符CRLF转换成LF,而在检出代码时把LF转换成CRLF

⑴ 在Windows系统上与其他系统协作开发

    用core.autocrlf来打开此项功能,如果是在Windows系统上,把它设置成true,这样当检出代码时,LF会被转换成CRLF:
    $ git config –global core.autocrlf true

⑵ 在Linux或Mac系统上与其他系统协作开发

    Linux或Mac系统使用LF作为行结束符,如果你不想Git在检出代码时进行自动的转换,把core.autocrlf设置成input来告诉Git在提交代码时把CRLF转换成LF,检出时不转换:
    $ git config –global core.autocrlf input
    这样在Windows系统上检出的代码会保留CRLF;而在Mac和Linux系统上,以及仓库中保留LF。

⑶ 团队都是在Windows系统上开发

    如果在Windows系统上开发程序,且正在开发仅运行在Windows上的项目,可以设置false取消此功能,把回车符记录在库中:
    $ git config –global core.autocrlf false

4) IDEA的配置

提交代码
    IDEA提交代码

设置换行符号
    IDEA设置换行符号

5) 参考

    Git - 配置 Git

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值