在最近的 Eclipse 更新 2021-03 之后,所有 bitbucket.org 存储库都无法再拉/推:
Pulling 1 repository
git@bitbucket.org:Acountxxx/Repoxxx.git: Cannot log in at bitbucket.org:22
git@bitbucket.org:Acountxxx/Repoxxx.git: Cannot log in at bitbucket.org:22
我尝试在一个新的工作区中克隆存储库,也使用 ssh:
URI:ssh://bitbucket.org/REPOxxxx.git
主办方:bitbucket.org
存储库路径:REPOxxxxx.git
协议:ssh
端口:空白
用户:空白
密码:空白
遇到同样的异常:
ssh://bitbucket.org:Acountxxx/Repoxxx.git: Cannot log in at bitbucket.org:22
CMD git pull
或 git push
仍然可以正常工作。
有没有人遇到过同样的问题并找到了解决方案?
环境:
视窗 10
git 版本 2.30.1.windows.1
日食 2021-03
EGit:5.11.0.202103091610-r
EDIT:也很有趣,其他存储库,例如从 github 仍然工作正常。此行为对于 bitbucket 上的私有和公共存储库是相同的。
答案 0 :(得分:6)
根据 howlger 关于 Known_problems -> Bug 572056 - Cannot work with Bitbucket after Eclipse update 的信息,我做了以下解决方法解决了这个问题。
打开 CMD 并运行:
ssh-keygen -t ed25519
这创建了一个新密钥:C:/Users/USER/.ssh/id_ed25519
登录到 bitbucket 并添加公钥文件 (C:/Users/USER/.ssh/id_ed25519.pub) 的内容作为新密钥:
https://bitbucket.org/account/settings/ssh-keys/
在eclipse首选项中配置这个key:
之后拉和推再次起作用。一些研究表明,ed25519 比默认的 RSA 算法更安全、更快,因此实际上是一个非常好的解决方案。
答案 1 :(得分:4)
您可能面临 EGit/JGit 5.11 的以下已知问题,对此有两种解决方法(请参阅 New and Noteworthy of EGit 5.11):
<块引用>Bug 572056:使用 RSA 密钥连接到 bitbucket.org: JGit 中使用的 SSH 库已从 Apache MINA sshd 2.4.0 更改 到 2.6.0。 sshd 2.6.0 默认对 RSA 进行公钥认证 仅使用 rsa-sha2-512 签名算法的密钥。服务器 不了解该机制,只了解较旧的 ssh-rsa 签名算法将拒绝登录。
GIT_SSH
使用外部 SSH。