Eclipse EGit-SSH在密码短语处失败(连接到GitHub时)

Eclipse EGit-SSH在密码短语处失败(连接到GitHub时),eclipse,git,github,egit,Eclipse,Git,Github,Egit,我正在使用EclipseIndigoRC4和EGit(捆绑)。我有一个已经提交到本地存储库的项目,现在我想从这个项目推送到GitHub中的远程存储库 从命令行工具推/拉工作正常(我已经配置了基于RSA密钥的SSH身份验证) 但当我尝试从EGit(通过指向GitHub的SSH)推送时,会得到一个输入密码短语的提示。但是当我输入正确的密码短语时,它会再次提示输入相同的密码(注意:用户名显示为git,因为这是使用GitHub时的默认值。我想这不会是一个问题) 在Eclipse首选项下,我进行了双重检查

我正在使用EclipseIndigoRC4和EGit(捆绑)。我有一个已经提交到本地存储库的项目,现在我想从这个项目推送到GitHub中的远程存储库

从命令行工具推/拉工作正常(我已经配置了基于RSA密钥的SSH身份验证)

但当我尝试从EGit(通过指向GitHub的SSH)推送时,会得到一个输入密码短语的提示。但是当我输入正确的密码短语时,它会再次提示输入相同的密码(注意:用户名显示为git,因为这是使用GitHub时的默认值。我想这不会是一个问题)


在Eclipse首选项下,我进行了双重检查,以确保已将其配置为使用我生成的RSA令牌。

通过以下链接对其进行了排序


我创建了一个环境变量
GIT_SSH
,它指向
/usr/bin/SSH
(这是我在命令行中使用的SSH实现)并启动了Eclipse。当这个环境变量存在时,Eclipse使用我的shell的SSH工具进行连接,并且没有提示输入密码短语,它工作得很好。

更简单的方法是从Eclipse orbit repository(p2软件站点)将JSch包更新为0.1.44:

根本问题实际上是JSch<0.1.44不支持较新的加密方案AES-128:


在EclipseJuno上,Jsch已经>1.44,但问题仍然存在(对我来说)。我还尝试设置GIT_SSH,但也没有成功。我以前的密钥是由ssh-keygen生成的,我只能猜测这不会生成合适的密钥

我所做的工作是:

  • 使用Eclipse生成新的DSA密钥-创建1024位密钥 Eclipse->首选项->常规->网络连接->SSH2->密钥管理

    [这可能适用于RSA,我没有尝试过]

  • 将生成的公钥复制到远程回购

  • 单击[保存私钥]按钮,但不输入密码短语

  • 重新启动ECLIPSE


Eclipse/EGit现在将与远程Git Repo同步,而不需要密码短语-phew

我在做这件事时遇到了问题,我应该把环境变量放在哪里,我需要的确切行,请?@Seth,这取决于你的操作系统Seth。在我的例子中,我使用的是Ubuntu,因此我修改了
/etc/environment
(您需要该文件的超级用户权限)文件,并添加了
GIT_SSH=“/usr/bin/SSH”
,作为最后一行,然后重新启动机器。如果您使用的是Windows,请查看此链接。无论如何,在谷歌上快速搜索“如何在你的操作系统名称中设置环境变量”会让你走得更远。希望这有帮助。祝你好运同样的问题,同样的解决方案!太多了!仅供参考,但不是一个固执的人,您通常不应该编辑/etc/environment,而应该编辑主目录中的.profile。添加export-GIT_-SSH=
行,哪个SSH
通常可以在大多数平台上工作。谢谢Nick。是的,你是对的。我习惯于编辑/etc/environment,因为我在那里做的更改在所有帐户中都可用。但是,我的机器上只有一个帐户,我可以用.profile来代替:)来为我修复它(Ubuntu 11.04)。为什么他们不把它移植到当前的稳定版本中呢?令人沮丧。@adietisheim非常感谢!更新JSch包对我也很有用!!:)在ubuntu 11.04上为我工作。谢谢