I\'ve got msysGit (Git on Windows) working just fine on my home machine, but at work, where we are behind a Microsoft ISA proxy, I get the following error when I do a git cl
Here is what worked for me:
git config --global http.proxy http://login:password@PROXY_SERVER:PORT
git config --global http.sslVerify false
I had this problem on windows7:
$ git clone git://github.com/facebook/php-sdk.git
Initialized empty Git repository in c:/Users/Jay/temp/php-sdk/.git/
github.com[0: 207.97.227.239]: errno=No error
fatal: unable to connect a socket (No error)
Finally realized it was AVG anti virus software running. I disabled the "resident shield" within AVG and works like a charm now.
$ git clone git://github.com/facebook/php-sdk.git
Initialized empty Git repository in c:/Users/Jay/temp2/php-sdk/.git/
remote: Counting objects: 223, done.
remote: Compressing objects: 100% (179/179), done.
emote: Total 223 (delta 84), reused 0 (delta 0)
Receiving objects: 100% (223/223), 37.32 KiB, done.
Resolving deltas: 100% (84/84), done.
I had the exact same error; but the ~/.gitconfig global config file was the key.
If you have a proxy with authentication you need to put in it:
git config --global http.proxy http://login:password@our-proxy-server:8088
And it just works (with 'git clone http:
')
Example of a blog detailing the same setup: GIT clone over HTTP: who knew?
If it still fails in 407, it could be related to a problem with git-fetch losing authentication tokens on the second HTTP GET. A more recent version of libcurl might be needed.
Update January 2011: jbustamovej mentions in his answer (upvoted) his blog post "GitHub Behind Corporate Proxy", which adds this:
It’s important to note that if your login has a backslash, as in
domain\login
, you must escape the backslash, as in:
git config --global http.proxy http://domain\\\login:password@our-proxy-server:8088
Do you have SOCKS proxy? If you have, you caould try FreeCap to socksify your git connection. I've been using git this way for a while.
If not, still try FreeCap. IIRC it might be able to use http proxies, but I haven't tried that.
EDIT: I usualy socksify cmd.exe using FreeCap, and from then on (almost) all cmdline programs that I start from that session are socksified too. That's why I recommended Free Cap, since SocksCap (another alternative) doesn't work that way.
As for using http.proxy, it for some reason never worked for me with mingw version and my company http proxies.
Even after configuring the proxy, you might be unable to connect, since the proxy is disallowing git protocol traffic. In this case, you might want to try using "http" instead of "git"
H:>git clone http://github.com/akitaonrails/vimfiles.git
Also, if you are using an automated proxy config file (.pac), just open it in a text editor. It is quite a easy to following scripting language, with a bunch of conditions to re-direct to the most efficient proxy. Find the one that allows general purpose traffic (typically, the last configured proxy), and configure it as mentioned in the comment above.
I've managed to get it working via a very convoluted route. Here's how:
Amazingly, it seems to work, although I've not tested everything yet. It'll clone, certainly, which is a start.
If anyone has a better solution, I'm all ears.