3

我在 stackoverflow 上四处搜索,但没有找到任何可以准确回答这个问题的东西,所以我想在这里问它,并提供尽可能多的关于我的问题的详细信息。

我刚刚安装了 openSUSE 12.3,安装了 git 并尝试使用 https 克隆到我的一个存储库中。以下命令可在 Ubuntu、Mac 和其他操作系统上正常运行,但由于某种原因,我在 SUSE 上遇到了问题。

当我运行时:

git clone https://username@mysite.com/git/myrepo.git

当“克隆到'myrepo'时它挂起

我已经禁用了 sslverify,这就是它在其他机器上的工作方式。我不认为这是一个 sslverify 问题,因为当我在其他机器上没有 sslverify 时,我会收到关于此的特定错误消息。在这种情况下,我只是挂在“克隆到...”上

我运行以下命令以获取更多信息:

GIT_CURL_VERBOSE=1 git clone https://username@mysite.com/git/myrepo.git

输出是:

Cloning into 'myrepo'...
* Couldn't find host mysite.com in the .netrc file; using defaults
* About to connect() to mysite.com port 443 (#0)
*   Trying x.x.x.x...
* Connected to mysite.com (x.x.x.x) port 443 (#0)
* Connected to mysite.com (x.x.x.x) port 443 (#0)
* successfully set certificate verify locations:
*   CAfile: none
  CApath: /etc/ssl/certs/
* Unknown SSL protocol error in connection to mysite.com:443 
* Closing connection #0
error: Unknown SSL protocol error in connection to mysite.com:443  while accessing https://username@mysite.com/git/myrepo.git/info/refs?service=git-upload-pack
fatal: HTTP request failed

为了这个问题,我显然更改了用户名、IP 和 DNS 名称。

我听说旧版本的 curl 有问题,但这个版本是较新的版本之一。Ubuntu 上的 libcurl 版本实际上更旧,所以我仍然不认为这是一个错误,但不能完全确定。我没有将其从 HTTPS 更改为 SSH 的特权,因此这不是替代方案。

提前致谢。

4

1 回答 1

1

我认为关键是 SSL 库(版本),而不是特别是 libcurl 版本。看起来您可能正在使用 OpenSSL,所以在这方面比较工作版本和非工作版本......

于 2013-03-23T18:23:27.450 回答