代码之家  ›  专栏  ›  技术社区  ›  Rajan Subramanian

如何访问我创建的两个不同的私有存储库

  •  1
  • Rajan Subramanian  · 技术社区  · 2 年前

    我很难从两个不同的私人回购中提取资金。我按照这里的说明,在github私有repo中创建了一个部署密钥。我有两种形式的私人回购协议:

    https://github.com/moonresearch/trading-engine
    https://github.com/moonresearch/dbreader
    

    现在,当我转到我的dbreader repo时,我转到了设置部分,并通过以下步骤添加了部署键:

    ssh-keygen -t rsa -b 4096 -C "me@github.com"
    eval "$(ssh-agent -s)”
    ssh-add ~/.ssh/id_rsa
    

    然后我去了我的id_rsa。发布文件位于/ssh/id_rsa。发布并复制内容,并粘贴到repo dbreader的部署密钥中。在完成上述步骤后,我可以成功地执行以下操作:

    git clone git+ssh://git@github.com/moonresearch/dbreader.git  
    

    现在,当我对第一次回购进行同样的操作时,我看到一条消息“密钥已在使用”。然后我创建了一个名为id_rsa_docker的新密钥,并粘贴到第一次回购的部署密钥部分。

    根据我在这里的理解,我应该创建一个配置文件来管理多个部署密钥。因此,我继续前进,并在中创建了一个/ssh目录:

    Host https://github.com/moonresearch/dbreader
       Hostname github.com
       IdentityFile=/Users/raj/.ssh/id_rsa
    
    Host https://github.com/moonresearch/trading-engine
       Hostname github.com
       IdentityFile=/Users/raj/.ssh/id_rsa_docker
    

    在完成上述步骤后,我尝试了

    git clone git+ssh://git@github.com/moonresearch/trading-engine.git
    

    我仍然无法让它正确克隆。我得到的错误是:找不到远程存储库。

    1 回复  |  直到 2 年前
        1
  •  1
  •   VonC    2 年前

    你的 ~/.ssh/config 文件应为:

    Host dbreader
       Hostname github.com
       User git
       IdentityFile=/Users/raj/.ssh/id_rsa
    
    Host trading-engine
       Hostname github.com
       User git
       IdentityFile=/Users/raj/.ssh/id_rsa_docker
    

    还有你的网址:

    git clone dbreader:moonresearch/dbreader.git
    git clone trading-engine:moonresearch/trading-engine.git