首页 > 解决方案 > 无法使用多个密钥连接到 Gitlab 存储库

问题描述

我有两个 Gitlab 存储库,由两个不同的用户拥有。让我们称呼他们

我有两个 RSA 密钥:使用 key1 我通常可以连接到个人仓库;与 key2 一起工作回购。我必须从不同的工作站(Mac OS / Windows)推/拉;在每台机器上,我都可以毫无问题地连接到第一个或第二个 repo。

我需要从单个 Windows 10 工作站连接到两个存储库,然后开始麻烦。在那个工作站上,我使用 Git Bash。

根据不同的指南(例如https://coderwall.com/p/7smjkq/multiple-ssh-keys-for-different-accounts-on-github-or-gitlab),我设置了一个~/.ssh/config文件:

Host gitlab-personal
        HostName gitlab.com
        User git
        LogLevel DEBUG3
        PreferredAuthentications publickey
        IdentityFile ~/.ssh/personal
        #IdentitiesOnly yes

Host gitlab-work
        HostName gitlab.com
        User git
        LogLevel DEBUG3
        PreferredAuthentications publickey
        IdentityFile ~/.ssh/work
        #IdentitiesOnly yes

如果我跑步, ssh -Tv git@gitlab-personal 我得到:

...
Welcome to Gitlab, User1!
...

如果我跑步,
ssh -Tv git@gitlab-work 我得到:

...
Welcome to Gitlab, User2!
...

这让我认为 RSA 密钥设置正确(即使在 Putty / Pageant 中)。

但是,如果我尝试克隆存储库,例如

git clone git@gitlab-personal:user1/personal.git

或者

git clone git@gitlab-work:user2/work.git

..在这两种情况下,我都得到了这样的回应:

Unable to open connection:
Host does not existfatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

我究竟做错了什么?

感谢任何可以帮助我的人。

标签: windowsgitsshgitlab

解决方案


推荐阅读