使用 TortoiseHg 时,如何防止出现“无支持的身份验证方法可用”错误?

jam*_*mus 17 version-control putty mercurial tortoise-hg

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

以下是重现的一些步骤:

  1. 下载并安装 TortoiseHg
  2. 转到我想要我的存储库的目录
  3. 右键单击 -> TortoiseHg -> 克隆
  4. 输入 ssh://hg@codebasehq.com/accountname/projectname/repositoryshortcode.hg 作为源路径
  5. 单击克隆

单击“克隆”后,它会弹出一个错误对话框

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

当返回克隆对话框时,会显示此错误:

运行 ""C:\Program Files\TortoiseHg\TortoisePlink.exe" -ssh -2 hg@codebasehq.com "hg -R accountname/projectname/repositoryshortcode.hg serve --stdio"" 远程 hg 没有合适的响应

[命令中断]

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

jam*_*mus 11

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

希望这可以帮助某人。

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


Fab*_*ian 10

我只是有同样的错误信息。但就我而言,问题是 TortoiseHg 附带的过时的 Pageant 版本。

调试“没有可用的支持的身份验证方法”错误消息的一个很好的技巧是在 mercurial.ini 中添加-v

\# Generated by TortoiseHg settings dialog
[ui]
username = name <name@email.com>
ssh = "TortoisePlink.exe" -ssh -2 -batch -C -v
Run Code Online (Sandbox Code Playgroud)

输出:

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
Run Code Online (Sandbox Code Playgroud)

另见:

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

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