我遇到的问题与此处描述的问题非常相似。但是,不同之处在于我正在尝试使用 Pageant 作为我的代理而不是 OpenSSH。我发现,当我在 Pageant 中加载了两个不同 Bitbucket 帐户的 SSH 密钥时,两个存储库中的一个将始终运行 Git 命令,而另一个将失败。有效的存储库取决于在 Pageant 密钥列表中首先排序的 SSH 密钥。
“失败”是指 Git 命令返回以下错误:
git -c diff.mnemonicprefix=false -c core.quotepath=false --no-optional-locks fetch origin
Forbidden
fatal: Could not read from remote repository.
Please make sure you have the correct access rights and the repository exists.
Completed with errors, see above.
我不知道这是 PuTTY/Pageant、SourceTree 还是 Bitbucket 问题。我怀疑这是一个 Bitbucket 问题,因为我发现如果我从 Bitbucket 帐户 A 中删除密钥 A,然后尝试在存储库 B 上获取,那么即使密钥 A 和 B 都加载到 Pageant 中,该命令也会成功。换句话说,当密钥未附加到任何 Bitbucket 帐户时,Bitbucket 似乎没有问题。
有没有人让 Pageant 使用同时为多个 Bitbucket 存储库加载的密钥?