前言
现在有一个这样的需求:在一台电脑上想通过ssh链接github的项目,也想链接gitlab的项目,又想链接自己公司配置的gitlab项目。这个时候怎么弄呢?
就需要用到多ssh的链接问题,接下来会详细介绍这个问题的解决方式
生成多个ssh-key
生成一个链接github的的ssh
1、首先进入终端,进入到~/.ssh目录下:cd ~/.ssh/
2、使用命令生成key:ssh-keygen -t rsa -C "xxxxxx@qq.com"
当看到Enter file in which to save the key (/Users/csmbp/.ssh/id_rsa):这句话的时候,就可以写上自己喜欢的rsa文件名称,例如输入github_id_rsa
然后一路回车键,就能在~/.ssh/下面看到刚才创建的github_id_rsa公钥和私钥
按照同样的方法生成github的ssh:
ssh-keygen -t rsa -C "xxxxxx@qq.com"
接着输入你自己认识的链接gitlab的公私钥名称
公司自己的gitlab公私钥的ssh生成方式同上
添加生成的公私钥到ssh-agent
如果你没有配置多个ssh的使用情况,后续的操作步骤不用也能正常的使用git来提交代码。
生成了多个ssh之后,想要在不同的项目中使用git的功能,还需要把生成的key添加到ssh-agent中去:
这里的-K可以不写,
ssh-add -K ~/.ssh/xxx_id_rsa
按道理来说这一步做完就已经可以了,笔者就是做完这一步就可以使用多个ssh-key来很轻松的提交代码到自己想要的git路径。
但是看github文档上面,还有一步操作,如果以上操作能完美解决问题的话,这一步可以不用看了。
github文档是这样解释的:
If you're using macOS Sierra 10.12.2 or later, you will need to modify your ~/.ssh/config file to automatically load keys into the ssh-agent and store passphrases in your keychain.
Host *
AddKeysToAgent yes
UseKeychain yes
IdentityFile ~/.ssh/id_rsa
也就是说如果你使用的是macOS系统10.12.2或者更高的版本就需要做这个配置,但是笔者使用的是10.13.5,不配置这个也是妥妥的能使用。
关于git使用远程地址的配置
这部分内容完全拷贝github官方网站,各位可以忽略不看。
创建一个新项目:
echo "# BigData" >> README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin git@github.com:LVHAI/BigData.git
git push -u origin master
添加已有的项目
git remote add origin git@github.com:LVHAI/BigData.git
git push -u origin master
网友评论