我正在使用Eclipse Indigo RC4和EGit(捆绑)。我有一个项目,我已经提交到我的本地存储库,现在我想从那里推送到我在GitHub中的远程存储库。
从命令行推送/拉出工具工作正常(我已经配置了基于RSA密钥的SSH身份验证)。
但是当我尝试从EGit(通过SSH指向GitHub)推送时,我得到一个提示输入我的密码短语。但是当我输入正确的密码短语时,它再次提示相同(注意:用户名显示为git,因为这是使用GitHub时的默认值。我想这不会是一个问题。)
在Eclipse首选项下,我进行了双重检查以确保它已配置为使用我生成的RSA令牌。
答案 0 :(得分:22)
按照此链接http://www.eclipse.org/forums/index.php/t/197428/进行整理。
我创建了一个环境变量GIT_SSH
,它指向/usr/bin/ssh
(这是我在命令行中使用的SSH实现)并启动了Eclipse。当存在这个环境变量时,Eclipse使用我的shell的SSH工具连接,并且没有提示密码,并且它工作正常。
答案 1 :(得分:13)
更简单的是从eclipse轨道存储库(p2软件站点)将JSch包更新到0.1.44:http://download.eclipse.org/tools/orbit/downloads/drops/R20110523182458/repository/
潜在的问题实际上是JSch< 0.1.44不支持更新的加密方案AES-128:
答案 2 :(得分:2)
在Eclipse Juno上,Jsch已经是> 1.44但问题仍然存在(对我而言)。我也尝试过设置GIT_SSH,这也不起作用。我之前的密钥是由ssh-keygen生成的,我只能猜测这不会产生合适的密钥。
我所做的工作是:
使用 Eclipse 生成新的DSA密钥 - 创建1024位密钥 Eclipse->偏好设置 - >常规 - >网络连接 - > SSH2->密钥管理
[它可能适用于RSA我没试过]
将生成的公钥复制到远程仓库
单击[保存私钥]按钮而不输入密码短语
RESTART ECLIPSE
Eclipse / EGit现在将与远程Git Repo同步,无需密码短语 - p!