现在我需要克隆一些存储库,但它们被禁止,然后我从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?
答案 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"