Windows 上的 Git 和 SVN

发布于 2024-07-30 12:36:05 字数 1061 浏览 6 评论 0原文

我正在尝试为我的本地存储库运行 git,并为 CodePlex 项目的中央存储库使用 SVN。 我下载了最新版本的 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 帖子。 我不确定我所经历的症状是否相同。

I'm trying to run git for my local repository and use SVN for my central repository to a CodePlex project. I downloaded the most recent version of msysgit, but the SVN support doesn't appear to be working.

The following successfully initializes a new empty repository and then gets stuck:

git svn init https://myproject.svn.codeplex.com
git svn fetch

After attempting to perform the fetch, I get the following:

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

As you can see, I try to permanently accept the certificate, but msysgit just sits and never performs the fetch.

Am I doing something wrong? Is the support not there? I found a similar Stack Overflow post from December. I'm not sure if the symptoms I'm experiencing are the same, or not.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

长发绾君心 2024-08-06 12:36:05

我不太清楚为什么,但是从上面询问是否接受证书的提示中回来需要很长时间。 等待约15分钟后,操作完成。

I'm not really sure why, but it takes a pretty long time to come back from the prompt above that asks whether or not to accept the certificate. After waiting about 15 minutes, the operation did complete.

花心好男孩 2024-08-06 12:36:05

根据我的经验,git-svn 在 Windows 上运行得不好。 我的建议是将 git import 放在 github 或任何其他 git 托管上,并在 Windows 上使用“纯”git。 这假设你有一个unix(或者更糟糕的cygwin,我猜它应该比msysgit工作得更好)来执行git-svn更新。 显然,这并不理想。

git-svn does not work well on windows in my experience. What I would advise is to put your git import on something like github or any other git hosting, and use "pure" git on windows. This assumes you have a unix (or at worse cygwin, which should work better than msysgit I guess) to do the git-svn updates. That's not ideal, obviously.

‘画卷フ 2024-08-06 12:36:05

我通过将证书添加到身份验证链来实现此目的。
您必须获取 .pem 格式的服务器证书的颁发者证书 (CA),并使用散列名称将其复制到证书目录 (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

I got this working by adding the certificates to the auth-chain.
You have to get the issuer-certificate (CA) of your server-certificate in .pem-format and copy it to the certs-directory (PATH_TO_GIT\ssl\certs) with a hashed name.
Generate the hash like so:

C:\> PATH_TO_GIT\bin\openssl.exe x509 -noout -hash -in PATH_TO_CA_CERT.PEM

Rename the CA-file to the output of the command and add ".0" as extension (e.g. 0dbd0096.0). This way openssl find the CA wich can be used to certify your server-certificate.

Find more information here: http://gagravarr.org/writing/openssl-certs/others.shtml#ca-openssl

套路撩心 2024-08-06 12:36:05

Codeplex 和 SVN 既过时又缓慢。 这是对我有用的(不同的项目购买你明白的)

git svn clone https://iswix.svn.codeplex.com/svn -r42691:HEAD

其中 42691 是存储库中最旧的变更集(或者你想要获取的最旧的变更集),而 HEAD 是……呃,头部。

我通过查看源代码页面中的历史记录选项卡。 这是最后一张了。

我尝试了 TortoiseGit 的各种设置,但它无法播放,命令行或半身像。

现在去泡杯茶或者烤个蛋糕吧,需要相当长的时间。

如果(在 Windows 上)您打开资源监视器并在“网络”下查找 perl.exe,并看到它正在与 svn.codeplex.com 通信,那么它正在工作。

Codeplex and SVN are as slow as they are archaic. Here is what worked for me (different project buy you get the idea)

git svn clone https://iswix.svn.codeplex.com/svn -r42691:HEAD

where 42691 was the oldest changeset in the repo (or the oldest one you want to fetch) and HEAD is ...duh, the head.

I found the changeset number by looking at the history tab in the source code page. It's the last one.

I tried all sorts of settings with TortoiseGit but it wouldn't play, command line or bust.

Now go make a cup of tea or bake a cake, it will take quite some time.

If (on Windows) you open the Resource Monitor and look for perl.exe under "network" and see it is talking to svn.codeplex.com then it is working.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文