多个bitbucket帐户

我有一个为我的9-5工作的Bitbucket帐户,我也有一个个人的Bitbucket帐户。 我的目标是能够在同一台计算机上同时使用。 我已经在Windows 7电脑上安装了最新的git。

所以目前一切与我公司Bitbucket帐户工作正常,我可以拉/推没有问题。 我使用ssh-keygen创build了一个新的ssh密钥,并在我的例子“tech”中分配了一个新的名字。 但我有问题如何告诉本地repo使用我创build的新的SSH密钥。 我假设每次我尝试连接它使用第一个SSH密钥。

我得到的错误:

$ git push conq:存取库访问被拒绝。 致命的:远端意外挂断

我在网上find了一些build议,但它似乎涉及到一个Linux / Git设置,例如我无法findWindows上的“configuration”文件。

如果您没有将密钥添加到密钥pipe理器(ssh-agent),则可能会出现此错误。 去做这个:

ssh-add ~/.ssh/tech 

顺便说一句,如果你有多个Bitbucket帐户,你将需要一个唯一的密钥为每个帐户。 IOW,你不能重复使用密钥。

这个博客文章描述了一个简单的方法来将多个ssh密钥添加到一台计算机上,并使用一个bitbucket帐户使用一个ssh密钥。 这比官方的bitbucket文档要清楚得多。 总结:

首先,确保你有一个默认的帐户设置,像Github上的这个教程。

对于第二个帐户:

  1. 创build一个新的ssh密钥:

     ssh-keygen -f ~/.ssh/<your second account name> -C "<you email>" 
  2. 使用pbcopy < ~/.ssh/<your second account name>.pub复制公钥并将此密钥添加到您的bitbucket帐户(在设置区域中)

(在Windows上,您可以使用ssh-keygen -f ~/.ssh/<your account name> -c "<your email>" | clip复制ssh密钥,或者在Linux上按照这些说明进行操作。

  1. 将以下内容添加到~/.ssh/config文件中。 第一个设置bitbucket.org的默认密钥。 第二个将你的第二个关键字设置为bitbucket.org的别名bitbucket-account2

     Host bitbucket.org Hostname bitbucket.org IdentityFile ~/.ssh/id_rsa Host bitbucket-account2 Hostname bitbucket.org PreferredAuthentications publickey IdentityFile ~/.ssh/<your second account name> 
  2. 您现在可以像以前一样使用默认帐户克隆项目:

     git clone git@bitbucket.org:username/project.git 
  3. 要克隆具有第二个身份的项目,请将bitbucket.orgreplace为您在~/.ssh/config文件(即上面的bitbucket-account2 )中指定的主机:

     git clone git@bitbucket-account2:username/project.git 

而已!

您应该只生成一次公钥/私钥对。 然后,如果您提供私钥,所有拥有您公钥的主机都允许您进行连接。

如上所述,您只需要生成一次您的pubkey – 因为您已经使用BitBucket进行设置,您的id_rsa (或任何您命名的文件)在哪里? 在我们的Windows安装中,它位于隐藏文件夹.ssh用户的主目录下。 你应该可以在那里创build一个config文件。

您可以添加您的公司电子邮件在您的个人bitbucket帐户,在bitbucket帐户pipe理页面:

在这里输入图像说明

您可以login您的个人电子邮件帐户,并访问个人项目和公司项目在一个单一的bitbucket帐户,它只使用一个SSH私钥。