美文网首页
GIT提交时没修改却提示有变更

GIT提交时没修改却提示有变更

作者: 吞风咽雪 | 来源:发表于2020-04-21 16:51 被阅读0次
假如再见面不妨给彼此一个拥抱吧,用春天还有些单薄的温软,解冻那些存放了一个冬天的思念,毕竟我们、好久不见。

前言

使用 git diff 对比报红文件,如发现修改处有 ^M 符号,是由于换行符不一致造成的(LinuxMac 都是使用 LFWindows 则是 CRLF

正题

介绍LF和CRLF

  • CRLF: 是carriagereturnlinefeed的缩写。中文意思是回车换行。

  • LF: 是line feed的缩写,中文意思是换行。

  • CR: 是carriagereturn的缩写。中文意思是回车。

解决办法:

$ git config --global core.autocrlf true

具体体现为:

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

git config --global core.autocrlf input
Linux或Mac系统使用LF作为行结束符;当一个以CRLF为行结束符的文件不小心被引入时你肯定想进行修正,把core.autocrlf设置成input来告诉 Git 在push时把CRLF转换成LF,pull时不转换

git config --global core.autocrlf false
在本地和代码库中都保留CRLF,无论pull还是push都不变,代码库什么样,本地还是什么样子

vscode修改换行符:

vscode修改换行符

相关文章

网友评论

      本文标题:GIT提交时没修改却提示有变更

      本文链接:https://www.haomeiwen.com/subject/bthpihtx.html