我被困在防火墙后面,所以必须使用HTTPS访问我的GitHub存储库。我在Windows XP上使用cygwin 1.7.7。

我试过把遥控器设置为https://username@github.com/username/ExcelANT.git,但按下输入密码的提示,但输入后没有任何反应。 https://username:<密码>github.com/username/ExcelANT.git和克隆空回购从零开始,但每次它给我同样的错误

错误:SSL证书有问题,请检查CA证书是否正确。细节: SSL例程:SSL3_GET_SERVER_CERTIFICATE:访问https://github.com/username/ExcelANT.git/info/refs时证书验证失败

打开GIT_CURL_VERBOSE=1会给我

* About to connect() to github.com port 443 (#0) * Trying 207.97.227.239... * successfully set certificate verify locations: * CAfile: none CApath: /usr/ssl/certs * SSL certificate problem, verify that the CA cert is OK. Details: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed * Expire cleared * Closing connection #0 * About to connect() to github.com port 443 (#0) * Trying 207.97.227.239... * successfully set certificate verify locations: * CAfile: none CApath: /usr/ssl/certs * SSL certificate problem, verify that the CA cert is OK. Details: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed * Expire cleared * Closing connection #0 error: SSL certificate problem, verify that the CA cert is OK. Details: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed while accessing https://github.com/username/ExcelANT.git/info/refs

fatal: HTTP request failed

这是我的防火墙有问题吗,cygwin还是什么?

我没有在Git配置中设置HTTP代理,但是它是一个ISA服务器,需要NTLM身份验证,不是基本的,所以除非有人知道如何强制Git使用NTLM,否则我就完了。


当前回答

请注意,为了让它工作(RVM安装在CentOS 5.6上),我必须运行以下命令:

出口GIT_SSL_NO_VERIFY = true

在那之后,将RVM安装程序卷曲到bash的标准安装过程工作得很好:)

其他回答

通过在Windows cmd中暂时禁用GIT/curl ssl验证来改进RouMao的解决方案:

set GIT_SSL_NO_VERIFY=true
git config --global http.proxy http://<your-proxy>:443

这个解决方案的优点是它只在当前cmd窗口中生效。

我需要两样东西:

转到cygwin设置并包含'ca-certificates'包(它在Net下)(如其他地方所示)。 告诉git在哪里可以找到已安装的证书: GIT_SSL_CAINFO = / usr / ssl /证书/ ca-bundle。GIT_CURL_VERBOSE=1 git… (不需要Verbose选项) 或永久存储该选项: Git配置——global http。sslCAinfo /usr/ssl/certs/ca-bundle.crt git……

在Mac OSX 10.5系统上,我可以用一个简单的方法让它工作。首先,运行github程序和测试,这对我来说工作正常,显示我的证书实际上是好的。 https://help.github.com/articles/generating-ssh-keys

ssh -T git@github.com

然后我终于注意到遥控器的另一种url格式。我尝试了上面的其他方法,但都没有效果。 http://git-scm.com/book/ch2-5.html

git@github.com:MyGithubUsername/MyRepoName.git

一个简单的“git push myRemoteName”工作得很好!

我尝试了所有的方法,最终我在主机文件中看到了github的随机入口。删除别名解决了这个问题

etc, etc % systemroot % \ system32 drivers \ \ hosts

我在必须管理的协作开发平台上配置Git时遇到了同样的问题。

解决方法:

I've Updated the release of Curl installed on the server. Download the last version on the website Download page of curland follow the installation proceedings Installation proceedings of curl Get back the certificate of the authority which delivers the certificate for the server. Add this certificate to the CAcert file used by curl. On my server it is located in /etc/pki/tls/certs/ca-bundle.crt. Configure git to use this certificate file by editing the .gitconfig file and set the sslcainfo path. sslcainfo= /etc/pki/tls/certs/ca-bundle.crt On the client machine you must get the certificate and configure the .gitconfig file too.

我希望这对你们中的一些人有所帮助。