在使用 git 的时候,遇到需要创建多个 ssh key 的需求,一个用来 git hub 项目,一个用来 git lab 项目;
之前如果已将创建过一个 ssh key,那么在创建第二个的时候,要修改默认名称,然后增加配置文件;
之前创建 ssh key 生成了如下两个文件,一个私钥,一个公钥
id_rsa
id_rsa.pub
我们要生成新的一个 ssh key,由于路径跟之前的一直,所以要改个名字
id_rsa_gitlab
id_rsa_gitlab.pub
具体如下
ssh-keygen -t rsa -f ~/.ssh/id_rsa_gitlab -C “a@b.com“
注意:因为 SSH 默认只读取 id_rsa,为了让 SSH 识别新的私钥,需要使用命令将其添加到 SSH agent,命令如下:
ssh-add ~/.ssh/id_rsa
ssh-add ~/.ssh/id_rsa_gitlab
若执行 ssh-add 时提示“Could not open a connection to your authentication agent”,则执行下面的命令:
ssh-agent bash
然后再运行 ssh-add 命令(可以通过 ssh-add -l 查看私钥列表);
接着修改配置文件:
在~./ssh 目录下新建一个 config 文件,命令如下:
touch config
配置文件如下:
#github
Host github.com
IdentityFile ~/.ssh/id_rsa
User a@b.com
#gitlab
Host gitlab.com
IdentityFile ~/.ssh/id_rsa_gitlab
User a@b.com