Git error: fatal: unable to connect a socket (Invalid argument)

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 clone:

cd \
git clone git://


Initialized empty Git repository in H:/vimfiles/.git/[0:]: errno=Invalid argument
fatal: unable to connect a socket (Invalid argument)

I've tried setting the http_proxy environment variable to:


I've set the Git http.proxy configuration directive:

git config --global http.proxy http://our-proxy-server:8088

Neither of the above makes a difference.

Doing a Git clone with http:// instead of git:// yields this:

cd \
git clone


Initialized empty Git repository in H:/vimfiles/.git/
fatal: download error - The    requested URL returned error: 407

407 is of course an authentication error.

Is there a way to get Git working from behind a proxy, specifically an ISA proxy? I don't know if it's going to be worth pursing this.


  • 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