使用ssh key的时候可以通过config文件指定不同域名使用不同的key文件,因此通过在hosts中设置不同的本地域名来使用多个ssh key文件登陆不同的github账号。
例如我们有账号a和账号b,对应的ssh key文件分别是id_rsa_a和id_rsa_b,首先修改/etc/hosts文件,设置两个本地域名指向github.com
/etc/hosts
1
2
| a.github.com github.com #a.github.com可以是任意文字
b.github.com github.com
|
修改用户的ssh配置文件~/.ssh/config,示例如下:
~/.ssh/config
1
2
3
4
5
6
7
8
9
10
| Host a.github.com
User git
Hostname github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_a
Host b.github.com
User git
Hostname github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_b
|
然后在你的git仓库的远程地址中,将对应的a.github.com和b.github.com替换原来的github.com,参考下面的变化:
git clone
1
| git clone git@a.githuc.com:sagerblog/sagerblog.github.com
|