我们在日常工作中会遇到公司有个gitlab,还有些自己的一些项目放在github上,这样就导致我们要配置不同的ssh-key对应不同的环境。我在网上也看了几篇文章,其中开源中国的这篇讲的比较好,但是文章中的代码还是有很多细节问题,所以我照猫画虎,详细写一下设置的过程。
$ ssh-keygen -t rsa -C 'youremail@yourcompany.com' -f ~/.ssh/company_rsa
$ ssh-keygen -t rsa -C 'youremail@your.com' -f ~/.ssh/github_rsa
生成公司和个人的ssh-key
添加到github
$ ssh-agent bash
$ ssh-add ~/.ssh/company_rsa
$ ssh-add ~/.ssh/github_rsa
$ ssh-add -l
添加私钥
$ cd ~/.ssh
$ touch config
# gitlab
Host gitlab.com
HostName gitlab.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/company_rsa
# github
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/github_rsa
打开config文件并添加内容
$ ssh -T git@github.com
测试
failed
,一定要输入yes;ssh-key
道理是一样的所以我就没展开了,需要注意的是在配置公司的时候,记住要把config
文件夹中的Host
地址改成内网的IP地址:
以我公司的内网ip为例
ssh-key
了。