Git在本地和远程仓库进行同步可以通过SSH协议,其速度快、安全性高,这里简要介绍本地创建ssh密钥的方法及连接配置
创建公钥密钥
使用ssh-keygen命令生成ssh公钥密钥,-t 指定加密算法,一般使用rsa, -f 指定公钥密钥文件名, -C 指定账号备注信息,一般填邮箱
1 | ssh-keygen -t rsa -f filename -C "[email protected]" |
- Windows : 在当前用户目录下 C:\Users\[username]\.ssh 下执行 ssh-keygen 命令,如果没有.ssh文件夹,可以自行建立,由于Windows GUI下,无法使用以 . 开头的文件夹名,可以使用下述两种命令创建。 [username]为用户名,管理员账号即为Administrator
1 | mkdir .ssh # Git Bash 命令 |
- Mac : 在当前用户目录下 ~/.ssh 下执行 ssh-keygen 命令,如果没有.ssh文件夹,可使用下述命令自行建立
1 | mkdir .ssh # zsh 命令 |
配置SSH Config文件
配置.ssh目录下的 config 配置文件,如若没有,则先自行创建该文件。按照如下所述配置,可以添加多个服务器的配置,SSH连接时,根据Host自动判断使用哪个ssh配置项
1 | ... |
Note:
- 主机别名Host 建议使用 主机名HostName(ip/域名),否则可能会出现无法正确匹配配置项,无法连接的错误
- 设置Github的SSH协议认证登录时,config配置文件中的User项应该配置为git,然后,执行ssh -T github.com命令测试SSH配置文件是否正确