fatal: unable to access https:// Failed to connect to: Connection refused|git clone问题(完美解决)

fatal: unable to access ‘https://github.com/xxxx/’: Failed to connect to x.x.x.x port xxxxx: Connection refused|git clone问题(完美解决)


系统: ubuntu 14.04


问题描述

执行以下命令克隆目标源码到本地时,会出现错误。

git clone https://github.com/RoboCup-SSL/technical-challenge-rules.git

错误:Cloning into 'technical-challenge-rules'... fatal: unable to access 'https://github.com/RoboCup-SSL/technical-challenge-rules.git/': Failed to connect to x.x.x.x port xxxx: Connection refused

按照wpyily|CSDN的方法,把克隆地址头缀由https://改为git@,可以克隆成功。但是每次都要注意这点,非常麻烦。所以,找到问题的根本原因,并找到了解决方法。下节介绍解决的方法。
fatal: unable to access https:// Failed to connect to: Connection refused|git clone问题(完美解决)_第1张图片
fatal: unable to access https:// Failed to connect to: Connection refused|git clone问题(完美解决)_第2张图片

解决方法

首先感谢前人的经验(tsq292978891|CSDN,以及无极天宗|新浪博客)。

tsq292978891|CSDN在它的博客中指出了问题的根本原因:原因是x.x.x.x port xxxxx被当作代理占用了,需要重启!!!

说明:本人经常由于科研原因需要科学上网,所以设置了代理。

  • 1.首先输入命令查看代理设置情况
 env|grep -i proxy 
NO_PROXY=localhost,127.0.0.0/8,::1
http_proxy=http://127.0.0.1:46759/
https_proxy=http://127.0.0.1:46759/
HTTPS_PROXY=http://127.0.0.1:46759/
no_proxy=localhost,127.0.0.0/8,::1
HTTP_PROXY=http://127.0.0.1:46759/

这个结果因人而异,其中代理的端口号与错误中显示的IP地址以及端口号一样,则说明是被该代理占用,需要unset所有与错误中提示的端口号相关的代理。

  • 2.按文中的情况应依次执行以下四条命令,取消占用的代理
unset http_proxy
unset  https_proxy
unset   HTTPS_PROXY
unset   HTTP_PROXY
  • 3.然后就可以愉快的git clone https://啦

  • 4.然后 然后…,我发现每次启动新的窗口,又git clone 不了,发现在新的端口下代理又出现了,并且占用了那个端口。我找不出代理是从哪里设置的,不敢瞎整。此处有一个次优的方案,就是把取消代理的的命令放入.bashrc文件中,这样每次开启新窗口,就会自动清除代理,不影响git clone,也不影响科学上网。

找开.bashrc文件

gedit ~/.bashrc

在未尾添加红框中的一行
fatal: unable to access https:// Failed to connect to: Connection refused|git clone问题(完美解决)_第3张图片

你可能感兴趣的:(ubuntu,coding)