0

我在个人服务器上安装了 gitosis 并进行了设置,这样我现在使用的 ubuntu 机器就可以从命令行访问存储库了

git clone gitosis@myservername:/myreponame.git

它要求我输入 rsa 密钥的密码,然后通过并按预期工作。

但是,我正在尝试将 EGit 与 eclipse 一起使用(再次在 Ubuntu 下),但我无法从存储库中提取。我将它设置为提取确切的存储库 gitosis@myservername:/myreponame.git 并继续查找 myservername 和我的个人公钥(它也提供了它的文件路径,所以我知道它是同一个)并要求我的密码。但是,它从不接受我的密码(注意:我很确定它拒绝密码而不是密钥本身,因为它立即拒绝它并且没有说未经授权,以及相同的密钥在 CLI 中有效的事实)。我的印象是它不起作用的原因是因为它试图用密码作为用户 gitosis 来解锁公钥,而不是我在本地机器上的用户名,

我知道我输入的密码是正确的,因为它可以在 CLI 中运行,我什至成功地更改了密码,以确保 300% 的确定。

任何人都可以阐明这个问题吗?

4

1 回答 1

2

圣鳄梨酱 - 我自己解决了。分享我的解决方案,因为似乎很多人都遇到了这个问题。

在进行研究时,我遇到了一个非常相似的问题 - 暗示这显然与 gitosis 无关,但 Eclipse 拒绝接受我的密码。

根据这个错误报告,EGit 默认使用的 ssh 实现不能处理使用 3DES 以外的任何东西加密的 ssh 密钥,但它不检查加密,因此就像输入了错误的密码短语一样失败。

以下对错误报告的评论对我有用: https ://bugs.eclipse.org/bugs/show_bug.cgi?id=326526#c9

它说只需设置一个 GIT_SSH 环境变量,EGit 现在尊重它,它可以处理您使用的密钥加密,在我的情况下,我只是将它设置为 /usr/bin/ssh

导出 GIT_SSH=/usr/bin/ssh

然后打开eclipse。

您可能还想在每次登录时都会运行的地方添加它。对于 Ubuntu 11.04 上的我来说,我将导出行添加到我的 ~/.gnomerc 文件(尚不存在)中,现在每次都设置我登录。

于 2011-09-08T07:33:36.507 回答