是否可以在一台计算机中拥有2个(或更多)GitHub帐户,2个(或更多)SSH键



是我和我的兄弟都从事编程,我们刚刚了解了github(以及类似的存储库站点(,但是我们在房子里只有一台计算机,所以我的问题是:p>我有可能有2个(或更多(github帐户的2(或更多(ssh键?

如果我在GitHub上有2个帐户,并且我在两个帐户上创建了一个SSH键第二个帐户的SSH键覆盖第一个键的SSH键?

我在两个帐户上创建了一个SSH键

如果您遵循GitHub文档,则应在本地计算机上创建两个SSH键。然后,您将公共密钥上传到GitHub,每个帐户一个。

第二个帐户的SSH键覆盖第一个键的SSH键?

不,SSH键存储在您的本地计算机上。当您与GitHub帐户共享密钥的公钥时,它无能影响其他帐户中的键。


在这种特殊情况下,最简单的解决方案是创建两个独立的Windows用户,每个用户都包含自己的github凭据。

我在此答案中找到了解决方案。基本上,您可以拥有多个具有多个git(github/gitlab(帐户的用户,每个帐户都有他/她自己的SSH键,但是您需要两个单独的存储库克隆,配置了第二个存储库来使用另一个git用户名和另一个主机名。主机名不是真实的,它只是用于使用替代SSH键对的SSH配置的条目。

步骤:

  1. 克隆回购: git clone repo repo.user2

  2. 配置本地用户名: cd repo.user2 && git config user.name user2 && git config user.email user@example.com

  3. 为用户创建替代SSH键:ssh-keygen -C "user@example.com" -f ~/.ssh/id_rsa.user2

  4. 将部分添加到〜/.ssh/config:

     Host github-user2.com
       Hostname github.com
       User git
       IdentityFile ~/.ssh/id_rsa.user2
       IdentitiesOnly yes
    
  5. 设置远程URL:git remote set-url origin git@github-user2.com:user/repo.git

  6. 现在,您应该能够访问de repo: git pull

$ home/.ssh/config

Host dev
    HostName dev.example.com
    Port 22000
    User fooey
Host github.com
    IdentityFile ~/.ssh/github.key

https://www.ssh.com/ssh/config/

否则为两个用户使用相同的SSH键...

一个更实用的答案:

仅对两个帐户使用相同的密钥。

由于同一个人(您(都使用两个帐户,因此使用不同的键没有优势。

ssh键用于识别,两个帐户的身份是您...

您可以将单个SSH键用于一百个帐户,只需确保您的私钥安全并受到密码保护即可。

最新更新