为什么http_proxy,https_proxy,all_proxy env不起作用我使用git代理?

时间:2013-06-28 02:14:36

标签: git proxy http-proxy env

现在我需要克隆一些存储库,但它们被禁止,然后我从https://www.kernel.org/pub/software/scm/git/docs/git-config.html读了一些单词:

  

http.proxy

     

覆盖HTTP代理,通常使用http_proxy,https_proxy和   all_proxy环境变量(参见curl(1))。这可以在每个远程基础上被覆盖;见remote..proxy

然后我设置了三个env virables:

export all_proxy="domain.com:8888"
export http_proxy="domain.com:8888"
export https_proxy="domain.com:8888"

但它没有用,然后我把它们重置为“”,然后我设置http.proxy使用这个:

git config --local http.proxy "domain.com"

它有效。但我不应该设置全局,因为可能有其他人正在克隆,但他们不应该使用代理,以及为什么它不能通过设置三个env virables?

2 个答案:

答案 0 :(得分:1)

要么因为你将env设置为domain.com:8888并且没有在git配置中指定端口,要么因为你需要将这些env变量大写。

你也意识到,每个回购你可以设置git vars吗?所以你可以这样做:

git init myrepo
cd myrepo
git config http.proxy "domain.com"
git remote add origin myremote
git fetch --all
git checkout -B master origin/master

然后只有这个回购你会代理。

答案 1 :(得分:0)

您可以(至少现在)也将代理设置与克隆命令一起传递:

git clone https://github.com/user/repository.git --config "http.proxy=host:port"