git关于 LF 与 CRLF

问题描述:

  • 今天在idea上配置好了git操作到push,目测都没遇到什么问题。
  • 但是再次点击提交按钮的时候,仍然提示我所有的文件都是需要提交的(我的主题中蓝色显示)
  • 然而本地并无改动,在提交窗口得到如下提示:
  • 查找了LF CRLF后,get到以下知识点:
    1.CR回车 LF换行
    2.Windows/Dos CRLF \r\n
    2.Linux/Unix LF \n
    3.MacOS CR \r
  • git默认的是 LF,也就是windows与mac都要做出更改。

解决办法:

1.设置git转换规则

  • git窗口命令,输入
git config --global core.autocrlf false
  • 通过设置 autocrlffalse告知git提交与更新的时候都不要转换,这样会导致其他系统的开发人员下载的都是CRLF
  • 官方文档如下描述:

2.更改自己编辑器的换行符
windows下设置为Unix风格,我觉得是较好解决方案

  • git窗口命令,输入
git config --global core.autocrlf true
  • 编辑器设置,如下是IntelliJ IDEA设置方法:
  • 注:当然了,此方法也有弊端:
    • 对于原有的文件,还是CRLF,除非手动去每个文件下方更改成LF
    • 对于该编辑器下打开的其他项目,编辑时,也会使其变成LF
posted @ 2018-02-07 14:34  kangkaii  阅读(1353)  评论(0编辑  收藏  举报