如何让 Windows 上的 TortoiseHg(Mercurial)使用(由 Puttygen 生成的)私钥文件?

如何让 Windows 上的 TortoiseHg(Mercurial)使用(由 Puttygen 生成的)私钥文件?

我已经使用 Puttygen 创建了公钥和私钥,现在我准备让 Windows 7 上的 TortoiseHg 进行克隆,方法是:

ssh://[email protected]/somecode

但似乎没有地方可以向 TortoiseHg 添加私钥?(或者甚至只是 Mercurial 命令行)

该文件已位于硬盘上的某个位置somefile.ppk。有人知道如何添加它吗?

答案1

来自 stackoverflow.com 上几乎相同问题的答案(由 David Tischler 提供):

将以下内容添加到主目录中的 mercurial.ini 的 [ui] 部分:

[ui]
ssh = tortoiseplink.exe -ssh -i "C:\Users\UserName\mykey.ppk"

或者如果你想指定你的 ssh 用户名,请添加

[ui]
ssh = tortoiseplink.exe -ssh -i "C:\Users\UserName\mykey.ppk" -l myusername

(假设您的密钥位于“C:\Users\UserName\mykey.ppk”)。

Pageant(其他人已经提到过)也应该有效(尽管我自己还没有尝试过)。

答案2

看起来您需要在 putty 生成的 .ppk 文件上运行 pageant.exe 以将其注册到 hg 可以找到的地方。

答案3

您无需将密钥添加到 TortoiseHg 或 Mercurial。相反,这些程序将调用 Putty(我认为是通过 plink.ext),并且该程序需要知道该密钥。

我已经有一段时间没有使用 Windows 了,但我记得 Putty 允许您以配置文件名称保存设置。其中包括要使用的用户名、主机名和私钥。如果您创建一个名为 的配置文件foo,那么从 克隆ssh://foo/应该可以工作。

答案4

你应该编辑 hgrc.d/Mercurial.rc

简单搜索行

ssh =“TortoisePlink.exe”-ssh-2

相关内容