使用SSH进行Aptana和GitLab版本控制

时间:2015-04-17 16:16:33

标签: git ssh aptana gitlab aptana3

我正在尝试将Windows上的Aptana与我的本地开发服务器集成,该服务器运行的是安装了GitLab的Ubuntu 14.10。我不是SSH专业人员,并认为这是我的问题的根源,显然是一个身份验证问题。我在我的Aptana系统上安装了Git Bash和Putty,并且能够设置SSH密钥,允许我使用Putty通过无密码登录连接到服务器。我有一个由Putty生成的私钥,名为'key.ppk',并将其导出为OpenSSH密钥,名为'key.openssh'。我还使用Git Bash创建了一个私钥,它只是一个名为'id_rsa'的文件,没有文件扩展名。

Aptana在General下的偏好>网络连接> SSH2,我将SSH2 Home Field设置为我的个人ssh文件夹(C:/ Users / [me] / .ssh /),其中包含上述所有文件。在私钥中,我有一个以逗号分隔的上述私钥列表:

key.openssh,file.ppk,id_rsa

在GitLab中,在我的配置文件设置中,我已将公钥添加到我的用户帐户(由Git Bash生成的id_rsa.pub密钥和由Putty创建的key.pub)。由于我对SSH的理解有限,我希望aptana使用所有3个私钥,GitLab使用两个公钥,我的假设是其中一个组合应该可以工作。

但是当我尝试推送到Aptana中的存储库时,我会被提示:

“请提供HTTP身份验证密码”

并提示输入git @ [我的服务器]的密码。

我知道'git'用户帐户是由GitLab设置过程创建的,而我在Putty和Git Bash中使用SSH成功​​登录会将我登录到我自己的用户帐户而不是git用户帐户,所以我认为这是我问题的根源。我的SSH凭据用于访问我自己的用户帐户,但不适用于git用户帐户。在Putty中,我可以通过将自动登录用户名设置为'git'来导致同样的失败,并且身份验证将失败,而如果我将该字段留空或在服务器上插入我的帐户用户名,则我已成功登录。

我不知道这是否是'正确'的行为,如果是这样的话,我的错误就是能够通过SSH连接到'git'用户帐户而不是我自己的帐户。任何人都可以指出我做错了什么来克服我希望看起来像甜蜜的开发设置的“最后一步”?

2 个答案:

答案 0 :(得分:1)

在Windows计算机上打开程序“Git Bash”并验证您是否可以ssh到您的GitLab服务器,例如ssh git@gitlab_server_hostname。如果它不起作用,则您的私钥/公钥设置有问题。

将GitLab项目URI输入Aptana时,请使用SSH版本。它应该看起来像git@gitlab_server_hostname:group/project.git。从您的错误中我猜测您正在尝试使用HTTP URL。

尝试通过Aptana进行Git操作。如果您遇到SSH故障(公钥问题),那么Aptana可能找不到您的私钥。解决这个问题很痛苦,但这里是instructions。如果你想为围栏摆动,对我来说,我必须把钥匙放在这里:

C:\Users\username\AppData\Local\VirtualStore\Program Files (x86)\Git\.ssh

找到后,将当前的.ssh内容复制到那里并在Aptana首选项中更改您的SSH2主页以指向它。

祝你好运。

答案 1 :(得分:0)

对我来说@ mab的回答是有帮助的。(我无法评论它对我有帮助)

特别是上述链接中的程序。 有了这个,我发现了关键的干草:

styleClass="#{fileUploadsBean.fileUploadComponent.valid ? '' : 'validationFailed'}"

并且必须命名为id_rsa

现在正常工作