我有2个Bitbucket帐户:
我添加了这两个帐户所需的所有SSH密钥(一切都很好)。
在我的配置文件中(在〜/ .ssh目录下):
Host bitbucket.org - myaccount1
User git
Hostname bitbucket.org
PreferredAuthentications publickey
IdentityFile ~/.ssh/myaccount1
Host bitbucket.org - myaccount2
User git
Hostname bitbucket.org
PreferredAuthentications publickey
IdentityFile ~/.ssh/myaccount2
但是,我无法从我的Git客户端访问myaccount2(验证错误)。对于myaccount1它是完美的,它的工作原理。
如果我想访问myaccount2,我必须删除配置文件中有关myaccount1的所有信息。我刚才在这个文件中:
Host bitbucket.org - myaccount2
User git
Hostname bitbucket.org
PreferredAuthentications publickey
IdentityFile ~/.ssh/myaccount2
就像那样,现在好了,我可以毫无问题地访问myaccount2。
如何正确配置此配置文件以保持对这两个帐户的访问权限?
非常感谢你们!
答案 0 :(得分:1)
您的配置文件在Host
:“bitbucket.org”中具有相同的名称。
您需要为每个名称指定一个不同的名称,然后相应地调整您的git远程URL。 例如:
Host bitbucket.org
User git
Hostname bitbucket.org
PreferredAuthentications publickey
IdentityFile ~/.ssh/myaccount1
Host othername
User git
Hostname bitbucket.org
PreferredAuthentications publickey
IdentityFile ~/.ssh/myaccount2
然后:
git clone git@othername/whatever.git
将从myaccount2
更多信息here