【Git】使用SSH多代码库共存

背景:

帮朋友最近在做一些私活,都是用阿里云托管代码,两套代码用同一个codeup管理,没法同时管理,在网上找了各种方法尝试好几次终于解决。

基本步骤:

1. 通过命令行定位到目录:~/ssh/

2. 执行以下命令,生成公钥和私钥对1和2:

ssh-keygen -t rsa -C "git@baidu.com"
ssh-keygen -t rsa -C "git@taobao.com"

#文件列表如下:
-rw-r--r--  1 garinzhang  staff   413 Feb  1 19:14 known_hosts
-rw-r--r--  1 garinzhang  staff   293 Feb  1 19:13 config
-rw-r--r--  1 garinzhang  staff   581 Feb  1 19:09 id_rsa_baidu.pub
-rw-------  1 garinzhang  staff  2610 Feb  1 19:09 id_rsa_baidu
-rw-r--r--  1 garinzhang  staff   580 Feb  1 19:09 id_rsa_taobao.pub
-rw-------  1 garinzhang  staff  2610 Feb  1 19:09 id_rsa_taobao

3. 找到生成的.pub文件,将pub文件里面的内容全部拷贝到对应的codeup或者gitlab的后台配置里面

4. 新建config文件:

# 代码库1
Host baidu.com(这个域名是后面会用到的,可以随意写,比如baidu.com)
    HostName codeup.aliyun.com (真正代码库的地址)
    User git
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/id_rsa_baidu(生成的私钥文件)
# 代码库2
Host taobao.com(一定要跟上面的不一样,比如taobao.com)
    HostName codeup.aliyun.com (这里跟上面的地址是一样的)
    User git
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/id_rsa_taobao

5. 此时已经全部配置好了,可以进行测试验证: 

garinzhangdeMacBook-Pro:.ssh garinzhang$ ssh -T git@baidu.com   (@后面是在config里面配置的host)
Welcome to CodeUP, ***!
garinzhangdeMacBook-Pro:.ssh garinzhang$ ssh -T git@taobao.com
Welcome to CodeUP, ***!

6. 配置完成之后,就可以clone代码了

注意红色部分一定是config里配置的域名,否则就无法正确区分不同的codeup代码仓库:

git clone git@baidu.com:456445458570390004265b52c5341/apolo.git

git clone git@taobao.com:456445458570390004265b52c5341/romio.git
路慢慢其休远羲,吾将上下而求所
原文地址:https://www.cnblogs.com/garinzhang/p/git_ssh_multi_gitlab.html