多账户Github SSH Key 管理

同一台PC中使用多个SSH Key是一个非常常见的场景,比如说有多个GitHub账户,或者说有需要连接多个不同的Git服务器,比如说Github是存放开源的项目的仓库,而私人的项目可能是放在Bitbucket上的,或者说除了这些还需要连接公司的Git服务器等。这时候我们需要对SSH Key 进行配置才能正确的使我们在多个Git服务器中来去自如。

前言

同一台PC中使用多个SSH Key是一个非常常见的场景,比如说有多个GitHub账户,或者说有需要连接多个不同的Git服务器,比如说Github是存放开源的项目的仓库,而私人的项目可能是放在Bitbucket上的,或者说除了这些还需要连接公司的Git服务器等。这时候我们需要对SSH Key 进行配置才能正确的使我们在多个Git服务器中来去自如。

创建新的SSH key

假设现在电脑里面已经存在一个SSH Key了,现在我们使用命令行来新增一个,注意保存时需要定义一个新的名称,不能把原来的SSH Key给覆盖了,如下所示:

Gen SSH Key

创建config文件

.ssh文件夹中创建一个config文件,内容如下所示:

1
2
3
4
5
6
7
8
9
10
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
# 新增加的SSH Key
Host example.github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/example

可以使用ssh命令来测试SSH key的可用性:

1
2
ssh -vT git@github.com
ssh -vT git@example.github.com

注意大小写,例如:git@github.com,写成:git@Github.com会连接失败。要和config文件中名称一致。

使用新的SSH Key

clone仓库时,只需要将主机名替换为config文件中配置Host的值即可:

1
git@github.com:UserName/projectExample.git

修改为:

1
git@example.github.com:UserName/projectExample.git

参考&进一步阅读

stackoverflow: Multiple github accounts ssh config

文章目录
  1. 1. 前言
  2. 2. 创建新的SSH key
  3. 3. 创建config文件
  4. 4. 使用新的SSH Key
  5. 5. 参考&进一步阅读
,