最近Mercurial在连接HTTPS服务器时添加了证书验证。我正在尝试为位于的Google Code项目克隆wiki存储库https://wiki.droidweight.googlecode.com/hg/,但该证书适用于*.googlecode.com
。
谷歌代码的证书不包括像*.*.googlecode.com
这样的多个子域名。
我得到错误:
% hg clone --verbose https://wiki.droidweight.googlecode.com/hg/ -- C:workspacewiki
abort: wiki.droidweight.googlecode.com certificate error: certificate is for *.googlecode.com, googlecode.com, *.codespot.com, *.googlesource.com, googlesource.com (use --insecure to connect insecurely)
我需要获取证书指纹。这个SO的答案说明了如何在*nix上进行操作。
如何在Windows 7(Home Premium)上获取指纹
参考文献:
- 谷歌代码支持网站上的公开问题
- Mercurial CA证书常见问题解答
您使用的是哪个版本的Mercurial?1.8.2根据文档,在克隆时打印指纹。
编辑:经过一些测试,我意识到Mercurial在连接不安全时会打印证书(我没有配置web.cacerts
,所以克隆总是成功的,尽管有警告)。所以,如果你把--insecure
传给hg clone
,你就会得到一个克隆和一个指纹。
或者,安装GnuWin32!它使Windows命令行成为一个有趣的地方:)(我与GnuWin32没有任何关系;只是非常感激。)