2013-05-11 58 views
4

我有一个BB(BitBucket)工作账号和一个BB账号,希望能够通过SSH使用TortoiseHg从一台PC访问它们。如何在一台带有TortoiseHg的PC上使用两个bitbucket帐户(使用单独的ssh密钥)?

当您将两个键添加到Pageant,然后尝试推送到使用其中一个帐户的repo时,Pageant会将第一个SSH传递给BB,并且如果它是BB帐户,则BB将接受它将用户登录到与该SSH密钥相关的帐户。

现在,如果第一个SSH密钥是用于有权访问repo的帐户,那很好,但是如果第一个SSH密钥用于其他帐户,您将收到授权错误。

似乎没有办法使用TortoiseHg将正确的密钥传递给BB。因此,我经常将SSH换成显然不理想的Pageant,我不如放弃SSH并使用密码。 :(

有谁知道的一种方式来获得TortoiseHg传递正确的SSH为该帐户?

回答

6

当我写这个问题,我碰巧遇到一个解决方案!现在,我之所以没来整个前是它是混帐不Mecurial所以我认为它仍然值得张贴这个问题,该解决方案允许他人在同一条船上可以轻松地找到解决方案:)

的解决方案是从这里:https://answers.atlassian.com/questions/150285/only-the-top-listed-private-key-in-pageant-is-used-offered-by-git-sourcetree-tortoisegit

以下是重要部分:

解决此问题的一种方法是在PuTTY 中也执行相同的配置,以消除要发送的密钥(以及因此将哪个用户认证为 )。

  1. 开启PuTTY在主机名称字段
  2. 围棋(从putty.org下载它,如果你没有的话)
  3. 类型“bitbucket.org”来连接> SSH>验证树
  4. 指定密钥在树
  5. 类型的别名下方“保存会话”(例如BB-USER1)为BB用户使用
  6. 回去“会话”和保存
  7. 重复2-每个6个BB的用户,并保存为不同的会话名称

然后在你的远程URL,与会话 名称取代“bitbucket.org”(例如bb-user1)来消除首先发送什么SSH密钥。这个 与在OpenSSH中使用IdentityFile相同。

相关问题