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;第二次和第三次是密码和确认密码,此时直接回车即可。

2.将ssh-key添加到ssh agent
ssh-add 私钥文件名
如果执行ssh-add时提示”Could not open a connection to your authentication agent”可以先执行命令:
ssh-agent bash
然后在重新运行ssh-add命令

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上

测试下是否成功
ssh -T git@gitlab.com
出现welcome to gitlab!就代表连接成功了
现在你的多个ssh key就可以使用了

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理