Git在开发中换行符相关配置

不同操作系统下的换行符

不可显示的换行符在各操作系统中是不一样的:

CR回车 LF换行
Windows/Dos CRLF \r\n
Linux/Unix LF \n
MacOS CR \r

Git 默认是以 LF \n 作为换行符的,为了保证代码提交与拉取时一致,需要对 Git 相关 autocrlfsafecrlf 设置。

打开命令行,进行设置,如果你是在 Windows 下开发居多,建议设置 autocrlftrue

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

如果你的文件编码是 UTF8 并且包含中文文字,且需要多用户协作在不同平台环境下并行开发,那还是把 autocrlf 设置为 false ,并且把所有文件转换为 Linux 编码(即 LF \n ),并开启 safecrlf 检查。

请将编辑器或 IDE 设置换行符(档案格式)为 LF \nSublime Text 编辑器可以修改用户配置,添加下面代码:

    "default_encoding": "UTF-8",
    "default_line_ending": "unix"

一些 sublime 技巧请参考:http://www.zhihu.com/question/19976788
然后使用 Git 推荐配置:

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

AutoCRLF 设置

#提交时转换为LF,检出时转换为CRLF
git config --global core.autocrlf true   

#提交时转换为LF,检出时不转换
git config --global core.autocrlf input   

#提交检出均不转换
git config --global core.autocrlf false

SafeCRLF 设置

#拒绝提交包含混合换行符的文件
git config --global core.safecrlf true   

#允许提交包含混合换行符的文件
git config --global core.safecrlf false   

#提交包含混合换行符的文件时给出警告
git config --global core.safecrlf warn

标签:git, autocrlf, safecrlf