git autocrlf 自动换行符转化导致的文件内容不一致问题(TortoiseGit)

提交本地仓库代码到远端后再拉取回来,正常情况下目录应当是全部为绿色的全部已同步状态。

但在 windows 下,如果你发现每次拉取回来后都会变为感叹号,则说明拉取回来的文件是有差异的。 到底是什么原因产生这样的差异?

这很可能是因为开启了 Git 的自动转换行符设置。

可行的解决方式则是关掉它。执行如下命令:

git config --global core.autocrlf false
git config --global core.safecrlf true

如果你使用 TortoiseGit,则可在 settings 里如图一所示方式设置:

  1. 取消 Auto CrLf(自动换行符转化) 的选中
  2. 设置 safecrlf(检查换行) 为 true

git-autocrlf

另外,项目组人员应当使用统一的编辑器风格。换行符推荐使用 unix 风格,如 sublime text 下可以如此设置:

"default_line_ending": "unix"
点赞 (2)
  1. 五四青年说道:
    Google Chrome 45.0.2454.101 Google Chrome 45.0.2454.101 Windows 10 x64 Edition Windows 10 x64 Edition

    进来看看

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

Captcha Code