diff --git a/wiki/dev/Git/进阶/常用技巧.md b/wiki/dev/Git/进阶/常用技巧.md index 61fc3925..b95ec624 100644 --- a/wiki/dev/Git/进阶/常用技巧.md +++ b/wiki/dev/Git/进阶/常用技巧.md @@ -10,3 +10,29 @@ sidebar_position: 3 author: 7Wate date: 2022-09-13 --- + +## Git 多平台换行符问题(LF or CRLF) + +**文本文件所使用的换行符,在不同的系统平台上是不一样的。**UNIX/Linux 使用的是 0x0A(LF),早期的 Mac OS 使用的是 0x0D(CR),后来的 OS X 在更换内核后与 UNIX 保持一致了。但 DOS/Windows 一直使用 0x0D0A(CRLF) 作为换行符。 + +```shell +# 提交时转换为LF,检出时转换为CRLF +git config --global core.autocrlf true +# 提交时转换为LF,检出时不转换 +git config --global core.autocrlf input +# 提交检出均不转换 +git config --global core.autocrlf false +# 拒绝提交包含混合换行符的文件 +git config --global core.safecrlf true +# 允许提交包含混合换行符的文件 +git config --global core.safecrlf false +# 提交包含混合换行符的文件时给出警告 +git config --global core.safecrlf warn +``` + +如果涉及到在多个系统平台上工作,推荐将 git 做如下配置: + +```shell +git config --global core.autocrlf input +git config --global core.safecrlf true +```