8

I use eclipse with git (egit).

I would like to make use of my ssh-agent so I can push from eclipse. Does anybody know how to set up egit to use ssh-agent?

background: I can't upload my key to eclipse as my keys are on a cryptostick. My ssh-agent can loaded with the help of opensc.

Janning Vygen
  • 8,877
  • 9
  • 71
  • 102

4 Answers4

10

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.

Robert Siemer
  • 32,405
  • 11
  • 84
  • 94
Janning Vygen
  • 8,877
  • 9
  • 71
  • 102
  • If you set `GIT_SSH` in `.profile` and Eclipse complains about missing `/usr/bin/ssh-askpass` make sure you don't have conflicts in your `.ssh/known_hosts`. For instance, try `git fetch` in a terminal in the same Git working copy and see if it complains about the host. – saaj May 07 '22 at 17:31
7

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)

Community
  • 1
  • 1
VonC
  • 1,262,500
  • 529
  • 4,410
  • 5,250
  • @gautamvegeta you can try (not tested myself) https://bugs.eclipse.org/bugs/show_bug.cgi?id=179924#c28 – VonC Jan 08 '13 at 06:44
  • The repository/plugin is no longer maintained. :-( – ST-DDT Jun 22 '19 at 16:22
  • 1
    @ST-DDT 7 years later, I am not chocked :) https://bugs.eclipse.org/bugs/show_bug.cgi?id=541274 might include more up-to-date (2019) references. – VonC Jun 22 '19 at 16:42
  • 1
    Note that (as of Q1/2021) OS-provided ssh agents (such as seahorse on Ubuntu) are still not supported on Linux workstations; see: https://www.eclipse.org/lists/egit-dev/msg04781.html – sxc731 Apr 14 '21 at 08:53
  • @sxc731 That is too bad. I hope those agents will be supported soon. – VonC Apr 14 '21 at 08:56
1

No way! Sooo many years of eclipse out there and still no way to work with a smartcards and ssh/ssh-agent? Really disappointing come back to eclipse..

https://bugs.eclipse.org/bugs/show_bug.cgi?id=179924

CeDeROM
  • 506
  • 5
  • 10
0

Checkout cac-agent. It includes cac-ssl-relay, which can work as a universal tunnel from any client application that needs CAC access (including git/eclipse).

Ryan
  • 1,171
  • 1
  • 10
  • 23