Skip to content

Git

跨平台换行符处理

在跨平台开发的时候,Windows的换行符使用的是CRLF,Linux/Mac默认使用的换行符是LF,这个会对日常开发会有一些影响,比如EsLint检查就会报错。

Git有两个选项,相互配合可以解决,

  1. core.autocrlf

这个配置项用用户在提交和检出代码时自动转换换行符,该配置项有三个可选项

  • true 提交时转换为LF,检出时转换为CRLF

  • false 提交和检出时均不做转换

  • input 提交时转换为LF,检出时不转换

  1. core.safecrlf

这个配置项用于检查文件是否包含混合换行符,该配置项有三个可选项

  • true 禁止提交混合换行符

  • warn 提交混合换行符时发出警告

  • false 不禁止提交混合换行符

日常项目开发存在跨平台协同开发的情况下,建议统一使用LF换行符。

bash
git config --global core.autocrlf input
git config --global core.safecrlf true

在IDEA中,可以修改默认选项,指定默认换行符。

Settings->Code Style->Line Separator->Unix and macOS(\n)

Github SSH

Mac

bash
#
ssh-keygen -t ed25519 -C "elvea.huang@gmail.com"
ssh-keygen -t rsa -C "elvea.huang@gmail.com"
#
ssh-agent -s
ssh-add ~/.ssh/id_ed25519
ssh-add ~/.ssh/id_rsa
#
ssh -T git@github.com

SourceTree

Windows - SSH

进入 Tools -> Options -> General -> SSH Client Configuration

把SSH Client切换到OpenSSH,这样子可以解决Git SSH的问题。