在使用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