git配置多个ssh key

在日常工作中公司会用到gitlab托管代码,但是自己的一些项目会放到github上,这时就需要为每个托管平台设置ssh key。下面是具体操作:

1.生成ssh-key

进入到.ssh目录下,输入以下命令生成ssh-key,your_email@example.com填入自己的邮箱

ssh-keygen -t rsa -C "your_email@example.com"

此时第一次输入的文件名,如果直接按回车会自动生成私钥和公钥:id_rsa、id_rsa.pub;
第二次和第三次是密码和确认密码,此时直接回车即可。

《git配置多个ssh key》

2.将ssh-key添加到ssh agent

ssh-add 私钥文件名

如果执行ssh-add时提示”Could not open a connection to your authentication agent”
可以先执行命令:

ssh-agent bash

然后在重新运行ssh-add命令

《git配置多个ssh key》

3.修改配置文件

将不同的账号对应的不同的ssh key 和不同的远程服务器关联起来,这个配置是在config下配置的(如果没有config可以自己新建)

Host github.com
    HostName github.com
    User git
    IdentityFile ~/.ssh/id_rsa_a

Host git.gitlab.net
    HostName git.gitlab.net
    User git
    IdentityFile ~/.ssh/id_rsa_gitlab

其中,Host和HostName填写git服务器的域名。
IdentityFile指定私钥的路径。
未加入配置文件的网站会自动应用id_rsa

4.将id_rsa.pub 上传到GitHub或GitLab上

《git配置多个ssh key》

测试下是否成功

ssh -T git@gitlab.com

出现welcome to gitlab!就代表连接成功了

现在你的多个ssh key就可以使用了

    原文作者:lhm_582082005a5e6
    原文地址: https://segmentfault.com/a/1190000018423168
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞