Re: Using socks proxy with git for http(s) transport
From: Yves Blusseau <hidden>
Date: 2016-06-15 22:56:18
2013/3/6 Jeff King [off-list ref]:
On Wed, Mar 06, 2013 at 10:21:42AM +0100, Yves Blusseau wrote:quoted
quoted
Try: git config --global http.proxy 'socks://yourhost:port' That will enable it for all git repositories on your machine. Git should also respect any environment variables that curl handles (because we use libcurl under the hood), if you prefer to set it up that way. See "man curl" for details.Thanks Jeff but it's not working.Hmm. I just double-checked, and it works for me.quoted
I use git 1.8.15I assume you mean 1.8.1.5 here.
Yes it's 1.8.15 sorry for the mistake
quoted
My socks proxy listen on my localhost at port 1080 so I do: git config --global http.proxy 'socks://127.0.0.1:1080'That looks right to me.quoted
But when i try to talk with a git server with http protocol i have: [...] * About to connect() to proxy 127.0.0.1 port 1080 * Trying 127.0.0.1... * connected * Connected to 127.0.0.1 (127.0.0.1) port 1080quoted
GET http://git.kernel.org/pub/scm/git/git.git/info/refs?service=git-upload-pack HTTP/1.1[...] * Empty reply from serverIf I set up a simple socks proxy with ssh, like: ssh -v -D 1080 my-ssh-host
My socks proxy is also a socks proxy with ssh
and run the same command, I get: * About to connect() to proxy localhost port 1080 (#0) * Trying 127.0.0.1... * SOCKS4 request granted. * Connected to localhost (127.0.0.1) port 1080 (#0) > GET /pub/scm/git/git.git/info/refs?service=git-upload-pack HTTP/1.1 [...] < HTTP/1.1 200 OK
You have a (#0) in the log that i have when using curl directly with the socks proxy
and it works. It does look like curl is treating localhost:1080 as a regular http proxy. What version of libcurl do you have? Is there anything in your environment that might be causing it to override the configured proxy setting (e.g., an http_proxy or https_proxy environment variable)?
I have try with an old version of curl: 7.15.5 and with the latest in development curl 7.29.1-DEV. But it seem that git-remote-http is compile with the old one. I have no http/proxy environment variables