views:

23

answers:

2

Hi All:

Where to I configure the proxy settings for GIT in IntelliJ Idea? I've gotten the proxy settings working for the plugins, but I just can't find it for GIT; and the help files only mention subversion.

Any help is appreciated.

+3  A: 

You have to configure proxy for git and not for intelliJ, intelliJ will just call the git command line.

git config --global http.proxy yourProxy:port shoud do it.

Colin Hebert
1. Holy cow that was a fast answer.2. Thanks!3. It worked
maximus
+1  A: 

To be complete I would like to add how to hop over a proxy to get to git server or secured sites using ssh, like for example private github repositories.

For intellij when using this option, you must select to use the native ssh implementation in Project Settings --> Version Control --> VCSs --> Git --> SSH Executable

We use a tool called corkscrew. This is available for both CygWin (through setup from the cygwin homepage) and Linux using your favorite packaging tool.

For MacOSX I refer to this blogpost to install it on you Mac.

The command line is as follows :

corkscrew <proxyhost> <proxyport> <targethost> <targetport> <authfile>

The proxyhost and proxyport are the coordinates of the https proxy.

The targethost and targetport is the location of the host to tunnel to.

The authfile is a textfile with 1 line containing your proxy server username/password separated by a colon

e.g:

abc:very_secret

Installation for using git:// protocol : usually not needed!

  • Create a helper script to create the tunnel

Create a script ~/bin/gitproxy which contains :

#!/bin/bash
corkscrew proxy.colo.elex.be 3128 github.com 9148 ~/.ssh/proxy_auth 
  • Create the proxy_auth file in the ~/.ssh/ folder

Make sure it is safe from prying eyes.

  • Set an environment variable to define the proxy command for git

    $ export GIT_PROXY_COMMAND=/home/pti/bin/gitproxy

You might place this in a section or script sourced from .bashrc which dynamically detects if you are behind the proxy or not. If the variable is not defined then git will work as usual.

  • test it

Installation for using "normal" ssh protocol for git communication By adding this to the ~/.ssh/config this trick can be used for normal ssh connections

Host gitproxy HostName github.com Port 22 ProxyCommand corkscrew %h %p ~/.ssh/proxy_auth

enjoy!

Peter Tillemans