我都有玳瑁2.3 64 位和TortoiseGit1.7.7 64 位安装在 Vista 64 位上。
TortoiseHg(ssh = "C:\Program Files\TortoiseHg\TortoisePlink.exe" -ssh -2 -C -batch
输入mercurial.ini
)和 TortoiseGit(GIT_SSH
环境变量设置为C:\Program Files\TortoiseGit\bin\TortoisePlink.exe
)都配置为使用 PuTTy 的叮当(PuTTY 后端的命令行界面)与其一起分发的版本。
我有盛会(PuTTy 身份验证客户端)正在运行,并且已加载正确的 ssh 密钥。但是,任何hg
或git
命令都会导致标题为PuTTY 致命错误显示以下消息:
已断开连接:没有可用的受支持的身份验证方法。(服务器发送:公钥)
同时使用原来的PuTTy 提供的 plink.exe 可以工作。
为什么 TortoisePlink 不起作用?
答案1
64 位 TortoiseSVN 与 32 位 Pageant 配合使用存在问题。要么使用 32 位 TortoiseSVN(在我看来,它没有必要是 64 位)。非正式情况下,开发人员只提供 32 位二进制文件。64 位版本的 PuTTY 可用这里。
答案2
收到这种神秘的错误信息有很多原因。但如果它与原始 plink 兼容,则可能是 TortoisePLink 出了问题,Sam 的回答可能会有所帮助。
尽管如此,64 位 TortoisePLink 需要 64 位 Putty 的说法并不完全正确。我很乐意使用 64 位 TortoisePLink 来取代 32 位 Pageant 的密钥。
您没有列出存储库的完整 URL 和与 putty 一起使用的连接信息。也许存在细微的差异,导致其中一个中断而另一个正常运行。
通常,错误消息会告诉您服务器密钥和客户端密钥不匹配。这种情况可能发生的一种情况是当您使用错误的用户名时(例如[电子邮件保护]代替[电子邮件保护])。
答案3
我在使用 TortoiseSVN、Windows 7 64 位时遇到了这个问题。仅仅获取 64 位版本的 Putty/Pageant 并没有解决问题,我继续遇到相同的错误。对我有用的是“配置变体(pageant)”部分下列出的替代签出 URL 格式这一页,这实质上意味着您无需输入服务器的 FQDN,只需将 PuTTY 会话名称放在结帐 URL 中即可:
svn+ssh://[remote-username]@[putty-session-name]/usr/local/svn/repos/myrepo