我正在尝试为我的本地存储库运行git,并使用SVN将我的中央存储库用于CodePlex项目。我下载了最新版本的msysgit,但SVN支持似乎无法正常工作。
以下成功初始化一个新的空存储库,然后卡住:
git svn init https://myproject.svn.codeplex.com git svn fetch
尝试执行提取后,我得到以下内容:
Error validating server certificate for 'https://myproject.svn.codeplex.com:443' : - The certificate is not issued by a trusted authority. Use the fingerprint to validate the certificate manually! Certificate information: - Hostname: *.svn.codeplex.com - Valid: from May 23 02:11:05 2009 GMT until May 23 02:11:05 2010 GMT - Issuer: redmond, corp, microsoft, com - Fingerprint: f0:89:78:18:47:70:e4:dc:27:01:27:9c:6f:44:4c:3f:8a:9b:ad:79 (R)eject, accept (t)emporarily or accept (p)ermanently? p
正如您所看到的,我尝试永久接受证书,但msysgit只是坐着而且从不执行获取。
我做错了吗?支持不存在吗?我从12月份发现了类似的Stack Overflow post。我不确定我所遇到的症状是否相同。
答案 0 :(得分:3)
答案 1 :(得分:2)
我不确定为什么,但是从上面的提示回来需要很长时间,询问是否接受证书。等了大约15分钟后,手术就完成了。
答案 2 :(得分:1)
我通过将证书添加到auth-chain来实现这一点。 您必须以.pem格式获取服务器证书的颁发者证书(CA),并将其复制到具有散列名称的certs-directory(PATH_TO_GIT \ ssl \ certs)。 像这样生成哈希:
C:\> PATH_TO_GIT\bin\openssl.exe x509 -noout -hash -in PATH_TO_CA_CERT.PEM
将CA文件重命名为命令的输出,并添加“.0”作为扩展名(例如0dbd0096.0)。这样openssl就可以找到可以用来证明你的服务器证书的CA.
在此处查找更多信息:http://gagravarr.org/writing/openssl-certs/others.shtml#ca-openssl
答案 3 :(得分:1)
Codeplex和SVN和它们一样慢。这对我有用(不同的项目让你明白了)
git svn clone https://iswix.svn.codeplex.com/svn -r42691:HEAD
其中42691是repo中最旧的变更集(或者你想要获取的最旧的变更集),HEAD是... duh,head。
我通过查看history tab in the source code page找到了变更集编号。这是最后一个。
我尝试使用TortoiseGit进行各种设置,但它不会播放,命令行或破坏。
现在去喝杯茶或烤蛋糕,需要一段时间。
如果(在Windows上)您打开资源监视器并在" network"下查找perl.exe。并看到它正在与svn.codeplex.com交谈然后它正在工作。
答案 4 :(得分:-3)
使用http而不使用ssl。 我使用来自sourceforge https://xmlvm.svn.sourceforge.net/svnroot/xmlvm/的fetch 包含此问题,我只需将网址更改为http://xmlvm.svn.sourceforge.net/svnroot/xmlvm/ 它工作正常