如何在Macos下配置ssh管理多个github账号
介绍在MacOS上管理两个Github账号的ssh key的方法,主要操作就是在ssh的配置文件~/.ssh/config
中指定两个不同的Host。
前提介绍
两个github账号,分别为carl.shen和jibing57,对应使用的key如下:
- carl.shen: id_rsa_carl_github_key
- jibing57: id_rsa_github
其中,carl.shen是默认账号,jibing57是第二账号。
ssh 配置
两个账号,在~/.ssh/config
配置文件中对应的配置如下:
关键点就在于Host "jibing57.github.com"
这一几个配置。
该设置的意思是: 当访问Host是jibing57.github.com
, 需要使用key ~/.ssh/id_rsa_github
来访问,但访问jibing57.github.com
时,实际映射到的还是github.com
。
通过使用Host别名来实现不同的key同时访问github.com
。
git clone方式
以jibing57/my-private-repository
这个测试私有仓库为例, 来看配置后git clone
的用法。其中carl.shen
和jibing57
两个账号都有访问该测试仓库的权限。
以carl.shen
账号的git clone命令如下:
以jibing57
账号的git clone命令如下:
两者的区别就在于,使用jibing57
账号时,git@
后面加的域名需要是在~/.ssh/config
中配置的jibing57.github.com
, ssh会根据jibing57.github.com
这个Host,从配置文件中找到所要使用的对应的IdentityFile
和User
来进行访问github.com
。