Eclipse git and ssh-agent

In your eclipse startup script or .profile (or wherever) add export GIT_SSH=/usr/bin/ssh before starting eclipse. Then eclipse uses default ssh which uses ssh agent and you cann run pull and push commands within eclipse even if your key is on a smartcard.

Edit: GIT_SSH is interpreted by eclipse's egit, but also by the stand-alone git. Setting it to /usr/bin/ssh sets it to the default value for stand-alone git, so only egit will change it's behavior.


Update June 2016 (4 years later): Gunnar Wagenknecht now mentions in the comments:

It's now possible in Eclipse Neon with project eclipseguru/eclipse-jsch-agent-proxy, an Eclipse ssh-agent and Pageant support.

https://raw.githubusercontent.com/eclipseguru/eclipse-jsch-agent-proxy/gh-pages/images/ssh-agent-preferences.png


A workaround for older Eclipse versions is to use the native OS SSH client instead of the Eclipse built-in one by setting GIT_SSH environment variable:

export GIT_SSH=/usr/bin/ssh

(See EGit SSH configuration and EGit FAQ, SSH Config)