有没有不同的方法来为bitbucket设置多个git配置文件?

问题描述 投票:0回答:1

我目前的

config
ssh 文件设置如下:

Host bitbucket.org-account1
  HostName bitbucket.org
  User git
  IdentityFile ~/.ssh/id_rsa_account1
  IdentitiesOnly yes

Host github.com-personal
  HostName github.com
  User git
  IdentityFile ~/.ssh/id_rsa_personal
  IdentitiesOnly yes

Host *
  IdentityFile ~/.ssh/id_rsa

当我尝试从我的

account1
帐户克隆时,它不断提示我输入
id_rsa
键,而不是
id_rsa_account1
键。这是我尝试运行的 ssh 命令:

git clone [email protected]:account1/my.cool.project.git

知道什么可能导致 RSA 密钥之间的混淆吗?我是否错误配置了 SSH 配置文件?

ssh bitbucket ssh-keys
1个回答
0
投票

这既是您的

~/.ssh/config
文件的问题,也是您使用它的方式的问题。

首先:由于

bitbucket.org
github.com
是不同的服务,因此您不需要执行单独的密钥,也不需要
-account1
/
-personal
/
Host
定义的任何部分。仅当您在 same 服务上使用多个帐户时,这些才是必需的。

第二:您的

~/.ssh/config
定义了
Host bitbucket.org-account1
,但您的克隆命令不使用
bitbucket.org-account1
。如果您不指定,SSH 将不会使用
bitbucket.org-account1
的设置。

您可以通过以下三种方法之一解决此问题:

  • 在两个服务上设置相同的密钥,然后从
    ~/.ssh/config
  • 中删除所有内容
  • ~/.ssh/config
    中,将
    bitbucket.org-account1
    更改为
    bitbucket.org
    ,将
    github.com-personal
    更改为
    github.com
    ,其余保持原样
  • 每次在克隆命令中使用
    bitbucket.org-account1
    github.com-personal
© www.soinside.com 2019 - 2024. All rights reserved.