我是第一次尝试在Eclipse中设置egit的git用户,因此我可以继续通过Eclipse轻松编写代码。问题是,每次我尝试通过egit克隆一个repo时,它都会给我一个错误“无法列出可用的分支。原因:ssh://git@github.com:22 Passphrase for /Users/elifinkelshteyn/.ssh/id_rsa。 “这真的很奇怪,因为我可以使用相同的id_rsa克隆终端,并且我已经在Eclipse ssh属性中验证它正在尝试使用正确的密钥。是什么给了什么?
答案 0 :(得分:7)
如果您收到密码短语提示但eclipse不接受密码短语,请尝试以下操作:
将GIT_SSH环境变量设置为ssh客户端,例如通过添加
export GIT_SSH=/usr/bin/ssh
到您的.bash_rc
在Mac OSX上,打开终端并输入:
cd
mkdir .MacOSX
cd .MacOSX
echo "" > environment.plist
open environment.plist
使用VALUE = / usr / bin / ssh添加KEY = GIT_SSH 并保存文件。
重新登录到您的帐户后,它应该有效。
答案 1 :(得分:5)
只是为了确认:这是当前的错误(issue 353561) 密码可能仍然存在问题,具体取决于您在创建密钥时使用的加密(bug 326526)。
但是,应该支持密码(作为Egit user guide mentions)。
答案 2 :(得分:3)
正如VonC所说,这是一个错误,即EGIT使用的SSH实现除了3DES加密的私钥外无法处理任何东西。 如果你像我一样,你有AES加密密钥,所以它无法解密它们。 该错误报告中有评论,这里是直接指向评论https://bugs.eclipse.org/bugs/show_bug.cgi?id=326526#c9
的链接该评论提供了一种可行的解决方法:最新版本的EGit尊重GIT_SSH环境变量,将其设置为/ usr / bin / ssh甚至plink.exe如果您在Windows上应该解决问题。
答案 3 :(得分:1)
自OP以来已经过了相当长的一段时间,我仍然遇到同样的问题。对于仍有此问题的人,这可能有所帮助:
确保您设置推送遥控器。当我在“推送...”对话框中同时获得无法获取远程存储库引用 - 问题(“...密码短语...”和“验证失败”)时,它对我有用。
如果你已经:
使用Github设置SSH密钥(窗口>首选项>常规>网络连接> SSH2)
设置您的本地存储库(您可以关注this guide)
创建了一个Github存储库(same guide)
...这是你如何做到的:
答案 4 :(得分:0)
看起来您的/Users/elifinkelshteyn/.ssh/id_rsa文件需要密码,而且我不确定Eclipse中的ssh实现是否知道如何提示您输入密码。我的大脑后面发现,你可能需要为mac安装一个ssh-auth软件包,以便它可以提示,如果你能找到更多关于它的信息,它可能是理想的。但是,短期内的解决方法是生成一个不使用密码的新rsa密钥,将其上传到github,并设置eclipse使用它。