问题描述:
作为开发人员,普遍有多个git账号,例如,公司邮箱对应的公司仓储账号和私人邮箱对应的github账号。在一台电脑上使用两个账号基于ssh协议拉代码,如果不进行额外设置,往往只有一个账号可以正常工作,其他账号需要输入密码。
解决:
1.分别针对两个账号生成不同的ssh key
ssh-keygen -t rsa -C "账号1“
ssh-keygen -t rsa -C "账号2“
注意生成key的时候,不要一路回车,要给两个key文件制定不同文件名,以免,第二个key将第一个key覆盖。
2.假设生成的文件名为 文件1、 文件2
ssh-add 文件1
ssh-add 文件2
电脑重启后,需要重新添加
永久添加方法
ssh-add -K 文件1
ssh-add -K 文件2
3.在~/.ssh文件夹下,生成config文件
#账号1的
Host 域名1
HostName 域名1
IdentityFile ~/.ssh/文件1
#账号2的
Host 域名2
HostName 域名2
IdentityFile ~/.ssh/文件2
4.可以正常工作了