GitHub - HTTPS访问

43

我无法通过HTTPS克隆我的存储库:

$ git clone https://github.com/walterjwhite/project.configuration.git
Initialized empty Git repository in ./project.configuration/.git/
error: Failed connect to github.com:443; Connection refused while accessing https://github.com/walterjwhite/project.configuration.git/info/refs
fatal: HTTP request failed

我已经配置了.netrc文件,包括我的登录名、密码以及我要连接的机器或服务器。


我在Bitbucket上面也遇到了同样的情况。欢迎提供任何解决方案... - S.K. Venkat
4个回答

80

正如你在 GitHub 支持 中所看到的,Scott Schacon 本人提出了以下建议:

所以我猜你的 .netrc 文件是不正确的或者有问题?
试着先从你的 .netrc 文件中删除信息然后再克隆 (因为这个是公共仓库)。

如果这不是 GitHub 服务器的问题,那就可能是你的防火墙。
还有可能是你的代理 (git config --global http.proxy http://user:password@proxy:xxx)。


啊,你说得对,我忘记了我需要配置我的代理。 - Walter White
1
我仍然遇到这个问题,它提示我输入密码,但是按回车键并没有提交我的密码,它只是停在那里。git clone https://walterjwhite@github.com/walterjwhite/project.configuration.git - Walter White
@Walter:你设置了你的GitHub令牌吗?你将SSH公钥添加到你的GitHub账户了吗?你尝试过使用https GitHub地址吗?git clone https://walterjwhite@github.com/walterjwhite/project.configuration.git - VonC
是的,我可以在家里很好地处理我的Github项目。但当我去选择咖啡店并在那里工作时,我无法使用SSH方法,所以我必须使用智能HTTP代理。当我复制并粘贴地址时,stackoverflow删除了https部分,但是是的,那就是我尝试过的。当它提示我输入密码时,它就卡住了。CTRL+C可以让我退出。 - Walter White
6
要移除全局代理变量,请使用命令 git config --global --unset http.proxy。记得要加上 --global。请注意,这并不能解决403错误,但是它能解决 fatal: unable to access 'https://github.com/whatever/': Failed connect to github.com:<yourproxyport>; No error 这个错误消息有缺陷,实际上你正在连接 github.com:443,而不是你的代理端口。 - KrisWebDev

11

仅作为对此讨论的补充,不知何故,当我使用http而非https时,它似乎对我有效。


3
在我的服务器上,我知道这是因为我没有安装适当的 GitHub 根证书。一旦安装了这些证书,https 就可以正常工作了。 - benrifkah

2

0

另一个对我而言没有问题的可能性是使用SSH选项进行克隆。

git clone git@github.com:walterjwhite/project.configuration.git

您必须上传一个SSH密钥到Github才能使用此功能,但它可以解决https问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接