git error:访问时无法连接到主机

时间:2012-08-09 19:39:00

标签: git

尝试拉/推或创建新克隆时出现以下错误

错误:访问https://github.com/user/pack.git/info/refs时无法连接到主机 致命:HTTP请求失败

当我用Google搜索时,人们建议设置http_proxy ..但我不明白 或者我不知道设置它..我完全被它搞砸了..

我不知道如何克服这些问题。

任何帮助将不胜感激..

注意:请注意,我可以在几天之前使用git ..在过去几天它已被搞砸..请帮助..

9 个答案:

答案 0 :(得分:11)

git config --global --unset http.proxy 
git config --global --unset https.proxy

适合我

答案 1 :(得分:7)

在运行Ubuntu 12.04的Vagrant VirtualBox VM上发生了这种情况。流浪者的情况已经持续了好几天。我重新启动了虚拟机(vagrant reload),重新启动了ssh,它运行良好。

原因是什么?不确定。别人可以推测。但是,我总是希望reboot three times只是为了确定;)

答案 2 :(得分:6)

当我更换笔记本电脑连接的网络时,我遇到了同样的错误。编辑/etc/resolv.conf正确解决了问题:

nameserver 8.8.8.8

将resolv.conf设为空白并重新启动也可以解决它。

关于debian 2.6.32-5-amd64 + VirtualBox 4.2.12。

答案 3 :(得分:3)

我给出了以下命令来重启我的网络服务。这肯定会起作用:

service network restart

答案 4 :(得分:2)

一个解决方案,如果这是您可以控制的存储库,则将使用SSH key进行存储库访问而不是HTTP。通过将origin遥控器放在:

来相应地更新遥控器
git remote rm origin
git remote add origin <ssh_path_from_github>

你可以在这里找到github中的ssh路径:

SSH github access

重新添加遥控器时,请确保以ssh://为前缀。如果这不起作用,那么我们将查看http代理设置,但基于您的虚拟github链接,我希望它是您控制下的存储库。

答案 5 :(得分:2)

我想在github上推送代码时遇到同样的错误。问题是我在Ubuntu机器上弄乱了一些环境变量。这是因为我想在谷歌浏览器上使用手动代理。

如果您使用的是linux,请使用以下命令查看http_proxyhttps_proxy是否设置为某个IP地址。

env | grep http_proxy

然后使用以下命令unset这两个变量的值。

unset http_proxy
unset https_proxy

尝试再次使用git。如果它不起作用,那么重新启动。它对我有用。

答案 6 :(得分:0)

我非常简单的解决方案是首先克隆空的新回购。然后我删除了项目中的.git文件夹并移动了我的所有项目文件和文件夹到新的repo文件夹中。然后我将目录更改为该文件夹,然后运行addcommitpush命令。一切都运作良好。

在尝试此解决方案之前,我没有先克隆git repo。我的项目文件夹和repo名称相同,我运行了git initaddcommit,并设置了上游,但push给了我一个错误(失败)连接到主机)。

答案 7 :(得分:0)

我在Visual Studio 2013中遇到了类似的错误:

An error occurred. Detailed message: An error was raised by libgit2. Category = Net (Error).
An error occurred while sending the request.

然后我尝试使用Git GUI:

Pushing to https://leniel@bitbucket.org/myrepo/bhp.git
error: Couldn't resolve host 'bitbucket.org' while accessing https://leniel@bitbucket.org/myrepo/bhp.git/info/refs?service=git-receive-pack
fatal: HTTP request failed

猜猜是什么......我的Parallels Virtual Machine目前没有互联网连接。重新建立互联网连接后,我可以推动我的提交。 :)不敢相信发生了。我们已经习惯了互联网连接。

答案 8 :(得分:0)

尝试使用不同的linux用户时,我遇到了同样的错误。

ls -lah
whoami

确保当前用户与该文件夹的所有者相同。