需求:有时候我们的代码托管在多个平台上,这就需要为每个托管平台设置SSH-key
打开git bash:
1,生成一个gitee用的SSH-Key
ssh-keygen -t rsa -C "你的邮箱地址" -f ~/.ssh/id_rsa.gitee
2,生成一个github用的SSH-Key
ssh-keygen -t rsa -C "你的邮箱地址" -f ~/.ssh/id_rsa.github
此时,.ssh目录下应该有4个文件:id_rsa.gitee和id_rsa.gitee.pub,id_rsa.github和id_rsa.github.pub,分别将他们的公钥文件(id_rsa.pub,github_rsa.pub)内容配置到对应的code仓库上
配置公钥:登录github或你的代码托管平台。右上角你的账号登录个人信息处,点击settings
点击SSH-keys
3,修改配置文件
若.ssh目录(就是私钥所在的文件夹)下无config文件,那么创建
touch config
在config文件添加以下内容
Host gitee.com
HostName gitee.com
User 你的邮箱地址
IdentityFile 你的密钥路径/.ssh/id_rsa.gitee
Host github.com
HostName github.com
User 你的邮箱地址
IdentityFile 你的密钥路径/.ssh/id_rsa.github
4,添加私钥
若执行ssh-add /path/to/xxx.pem是出现这个错误:Could not open a connection to your authentication agent,则先执行如下命令即可:
ssh-agent bash
ssh-add ~/.ssh/id_rsa.gitee $ ssh-add ~/.ssh/id_rsa.github
查看添加的私钥
ssh-add -l
5.测试
ssh -T git@github.com
ssh -T git@gitee.com
输出
Welcome to GitLab, your name!
则说明成功了。
也可以在自己的github上创建一个project之后,再git bash中gitc clone 一下进行测试。
如果你要配置两个github,config如下
Host github.com
HostName github.com
User 你的邮箱地址
IdentityFile C:/Users/Administrator/.ssh/id_rsa.github
Host two.github.com
HostName github.com
User 你的邮箱地址
IdentityFile ~/.ssh/id_rsa.github_two
测试
ssh -T git@github.com
ssh -T git@two.github.com
Q.E.D.