使用 TortoiseHg 时如何避免出现“没有可用的支持的身份验证方法”错误?

使用 TortoiseHg 时如何避免出现“没有可用的支持的身份验证方法”错误?

这是我第一次尝试 Mercurial,但是在使用 TortoiseHg 时,使用远程服务器(在本例中为 codebasehq.com)进行推送/拉取/克隆时遇到了问题。

以下是重现的一些步骤:

  1. 下载并安装 TortoiseHg
  2. 转到我想要的存储库目录
  3. 右键点击 -> TortoiseHg -> 克隆
  4. 输入 ssh://[电子邮件保护]/accountname/projectname/repositoryshortcode.hg 作为源路径
  5. 单击克隆

一旦我点击克隆,就会弹出一个错误对话框

“PuTTY 致命错误”“已断开连接:没有可用的受支持的身份验证方法。”

当返回克隆对话框时显示以下错误:

运行“C:\Program Files\TortoiseHg\TortoisePlink.exe”-ssh -2[电子邮件保护]“hg -R accountname/projectname/repositoryshortcode.hg serve --stdio”“远程 hg 没有合适的响应

[命令中断]

我需要做什么才能防止此错误并成功与远程存储库交互?

答案1

计时完毕。我需要创建一个 ssh 密钥对。为此,我打开了 puttygen.exe 并生成了一个密钥。然后我运行 pageant.exe 并将生成的密钥添加到其列表中。最后一步是登录 codebasehq 并将密钥的文本(来自 puttygen 中标有“用于粘贴的公钥...”的框)添加到我的个人资料中。

希望这对某人有帮助。

(我将接受我自己的答案,但如果有人能提出更简洁的答案,我会很乐意接受你的答案)

答案2

我刚刚收到了同样的错误消息。但就我的情况而言,问题出在 TortoiseHg 附带的 Pageant 版本过旧。

调试“不支持的身份验证方法”错误消息的一个好方法是添加-v在 mercurial.ini 中

\# Generated by TortoiseHg settings dialog
[ui]
username = name <[email protected]>
ssh = "TortoisePlink.exe" -ssh -2 -batch -C -v

输出:

remote: Pageant is running. Requesting keys.
remote: Failed to get reply from Pageant
remote: Using username "hg".
remote: Disconnected: No supported authentication methods available (server sent: publickey)
no suitable response from remote hg

另请参阅:

http://confluence.atlassian.com/display/BITBUCKET/Set+up+SSH+for+Mercurial

http://confluence.atlassian.com/display/BITBUCKET/Troubleshooting+SSH+Issues

答案3

我遇到了同样的问题。我在 Windows 上使用 Git Extensions。我的解决方案略有不同。我没有使用 ssh repo,而是使用了 http URL。

类似于:https://{user}@bitbucket.org/{owner}/{name}.git

相关内容