如何确保我使用的个人远程服务器上的正确身份?

如何确保我使用的个人远程服务器上的正确身份?

我所在的公司和我都在使用 Gitlab 作为远程仓库。为了方便从我的个人笔记本电脑连接,我希望能够连接到 2 个不同的仓库。一个是公司的,另一个是我的。我使用 2 个帐户来实现此目的(个人帐户和公司帐户)

本地

我在 ~/.ssh/config 中配置了 2 个节

Host gitlab.com
    HostName gitlab.com
    IdentityFile ~/.ssh/personal
    ForwardAgent yes
Host company.gitlab.com
    HostName gitlab.com
    IdentityFile ~/.ssh/company
    ForwardAgent yes

当我从本地计算机执行 git 操作时一切正常。

当我连接到我的个人远程服务器并尝试 git my repo 时,就会出现问题。我收到类似这样的错误

remote: 
remote: ========================================================================
remote: 
remote: The project you were looking for could not be found.
remote: 
remote: ========================================================================
remote: 
fatal: Could not read from remote repository.

经过一番搜索,我发现 git 使用了错误的身份。如果我这样做,ssh-add -l我会得到 2 个指纹

4096 SHA256:xxxxxxxxxx personal_key (RSA)
4096 SHA256:yyyyyyyyyy company_key (RSA)

如何确保在我的 git repo 上仅使用来自我的远程服务器的一个身份? 如何确保我使用来自我的个人远程服务器 (personal_key) 的正确身份?

感谢您的帮助。

答案1

超级用户向我推荐了正确的帖子,但我后来才看到它。解决方案就在那里

我需要做的是:

  • 将我的公钥复制到我的个人远程服务器上scp ~/.ssh/personal.pub [email protected]:.ssh/
  • 更新我的远程配置文件以添加
Host gitlab.com
    HostName gitlab.com
    IdentityFile ~/.ssh/personal.pub
    User git

谢谢克里斯·约翰森

相关内容