【发布时间】:2015-09-19 12:03:21
【问题描述】:
我查看了几个答案和论坛以寻求解决方案,但找不到一个可行的。
我有这种情况:
- Eclipse Luna 服务版本 2 (4.4.2)
- Ubuntu 14.04 x64
- 我的
~/.ssh文件夹中有两个 ssh 密钥 - 两个 bitbucket 帐户(一个用于个人项目,一个用于企业)
- 只能通过我的主键 (~/.ssh/id_rsa) 访问的 git 存储库
- 只能通过我的辅助密钥 (~/.ssh/other) 访问的 git 存储库
我创建了一个~/.ssh/config 文件,内容如下:
Host bitbucket bitbucket.org
Hostname bitbucket.org
IdentityFile ~/.ssh/id_rsa
IdentityFile ~/.ssh/other
User git
为了保持理智,我还使用ssh-add 添加了第二个密钥。运行 ssh-add -l 会列出这两个键。
使用命令行时,所有 git 命令都像一个魅力一样工作,两个存储库都有。但是在使用 Eclipse 时,我在尝试使用辅助键从存储库中克隆或拉取时总是收到 Invalid remote: origin 错误:
Caused by: org.eclipse.jgit.errors.NoRemoteRepositoryException: git@bitbucket.org:myuser/myrepository.git: conq: repository access denied.
我在Window > Preferences > Network Connections > SSH2 > Private keys 添加了辅助键,并将GIT_SSH 环境变量设置为指向我的ssh 可执行文件:
$echo $GIT_SSH
/usr/bin/ssh
我已经多次重启 Eclipse 甚至操作系统,但都没有成功。
由于我可以从命令行毫无问题地使用 git,我倾向于认为 Eclipse 有问题。
如何在 Eclipse 上使用多个 Git SSH 密钥?或者如何强制 Eclipse 在单个项目中使用我的辅助键?
【问题讨论】: