我最近更改了我的GitHub用户名,当我尝试使用身份验证>选择使用本地SSH代理,GitKraken推送失败,出现以下错误:
Push Failed
Configured SSH key is invalid.
Please confirm that it is properly associated with your git provider.
取消选择该选项会显示位于
的正确的私钥/公钥对~/.ssh/id_rsa
~/.ssh/id_rsa.pub
并允许完成推送。
我也可以从Eclipse内部推送,并通过命令行无错误地推送。存储库的URL指向我的新用户名。
到目前为止,我已经检查了几件事:
ssh -T github.com
拒绝许可
id_rsa.pub的指纹与Github帐户中存在的密钥匹配。
以下命令表明ssh工具尝试rsa私钥,但被拒绝:
$ ssh -vT github.com
debug1: Offering RSA public key: /home/<user>/.ssh/id_rsa
debug1: Authentications that can continue: publickey
debug1: Trying private key: /home/<user>/.ssh/id_dsa
debug1: Trying private key: /home/<user>/.ssh/id_ecdsa
debug1: Trying private key: /home/<user>/.ssh/id_ed25519
debug1: No more authentication methods to try.
Permission denied (publickey).
在这种情况下导致ssh -vT失败的原因是什么,为什么它不会阻止git push / pull但是当GitKraken尝试推送时会失败?
答案 0 :(得分:9)
对我而言,这是由升级到OSX Sierra引起的。我不得不执行
ssh-add -k ~/.ssh/id_rsa
(您可能必须将其替换为您正在使用的密钥的路径)。该命令将ssh密钥添加到git代理程序。有关更多信息,请参阅GitHub Help Page about adding SSH Keys。 您可能必须将命令添加到在启动时运行的某种安装文件,因为似乎ssh代理不记得密钥(至少对我而言)。
答案 1 :(得分:0)
帮助我解决此问题的方法是转到GitKraken首选项,并连接Bitbucket和Github并对其进行授权。
在那之后,勾选“通用”中的框,说使用本地ssh代理。 (可能是