我在 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 的特权,因此这不是替代方案。
提前致谢。