EGit不记得SSH密码

时间:2015-08-20 12:58:27

标签: eclipse git ssh eclipse-plugin egit

使用终端git命令和RabbitVCS,我从未被要求提供SSH密码,因为它已添加到SSH代理中:

me@mymachine:~$ ssh-add -l
2048 s0:m3:f1:ng:3r:pr:1n:7... me@domain.tld (RSA)

无论如何,我在使用EGit和Eclipse时遇到了问题。当我做出需要远程访问的操作时,系统会提示我输入密码。

在寻找解决方案后,我发现了这个问题:How to make eclipse remember ssh key passphrase?

基本上我有同样的问题。所以我尝试设置环境变量,重新启动我的机器,但它不起作用......

me@mymachine:~$ echo $GIT_SSH
/usr/bin/ssh

(环境变量在.bash-aliases中设置,如其他问题中建议的那样)

由于这种方法对我没有用,我一直在寻找可能阻止EGit使用SSH代理的SSH密钥的其他可能问题,但在每个问题/主题/线程设置中,环境变量修复了问题。有同样问题的人......

  • 我该怎么做才能让它运行?
  • 还有什么可能导致这种行为?
  • 我可以做些什么来调试它?

更多信息:

  • Eclipse:版本:Luna Service Release 2(4.4.2)
  • EGit:4.0.1.201506240215-r(最新)
  • Ubuntu:15.04
  • 密钥是使用ssh-keygen生成的,我不想使用其他密钥或创建新密钥

1 个答案:

答案 0 :(得分:1)

我发现Eclipse不知道GIT_SSH环境变量。当我通过终端运行Eclipse时,一切都很好。在我从Unity侧面板重新启动Eclipse后,它再次拒绝工作。我的修复是使用以下内容在eclipse.desktop中制作自定义~/.local/share/applications文件:

[Desktop Entry]
Type=Application
Name=Eclipse
Comment=Eclipse IDE
Icon=/opt/eclipse/icon.xpm
Exec=/opt/eclipse/eclipse_param.sh
Terminal=false
Categories=Development;IDE;Java;
StartupWMClass=Eclipse

/opt/eclipse/eclipse_param.sh

的内容
#!/bin/bash

export GIT_SSH=/usr/bin/ssh
/opt/eclipse/eclipse -showlocation

在这些变化之后,一切都按预期工作。