无法进入远程git存储库

时间:2018-01-15 14:04:42

标签: git ssh openssh

我正在尝试为新的开发人员提供访问我们的私有git存储库的权限。首先,一些前因:

  • 开发人员正在使用Windows和git bash(他首先尝试使用GUI,但由于他遇到了问题,我们决定暂时使用命令行git来调试错误)。
  • 他的Windows机器中的开发人员用户名是" raimo",但我在服务器中创建了他的帐户,git存储库为" ramon"。

无论如何:他可以毫无问题地将git存储库克隆到他的本地机器,但是当他试图推动更改时,他会收到一个错误:"致命:协议错误:线路长度错误:ramo&# 34;

我们看到了this question的答案,所以我告诉他:

ssh ramon@[server.name] git-receive-pack /var/git/[repository name]

他得到的回应是:

008c61c2ff5944d78bf10df33731c40cf972a0e4bfb2 refs/heads/[branch name 1] report-status delete-refs side-band-64k ofs-delta
004c9c518491c3f863b2830dcb4d0dbe9cd7919ba50b refs/heads/[branch name 2]
004eb7909056d60b8188e8e41d6b614c8e88e2cf848b refs/heads/[branch name 3]
004c3ef6b4c43034157dcce61e2a98c84ad7e7c695c9 refs/heads/[branch name]
004d4d423c5dc669f7d827b63d9c29c11b569281f391 refs/heads/[branch name]
004f6cfbabad11009a2c451ad8cf9e1837b417394e7e refs/heads/[branch name]
00494c96774aad57f200fe61e56d12fd5c69f6154139 refs/heads/[branch name]
004777ef2fc618ccacad372cd720f95591d4a347fc92 refs/heads/call_to_action
00490bad8d61d3213c1ece42a4e0f432e053ce9eeef9 refs/heads/[branch name]
004061ae4b7acec207773adff985bc6cf504a107aadc refs/heads/carrito
0052ca13ffe125f3b96b7176654e6ac5a472525c4019 refs/heads/[branch name]
004fe341b335ca9bd57d9e1bd0a69d75879292313a8c refs/heads/[branch name]
004288b199d02b21a26b5e3ce25c204b49b80ef63ac5 refs/heads/etiquetas
003d4cb828f02d61054e0320dead63c7f285ca84dfc3 refs/heads/help
004ba9baf7fd376ddc2017222fe07fa2a4c496e129fd refs/heads/[branch name]
005991a2b4b742e2f1793e71d85a0565aec4fa65b415 refs/heads/[branch name]
0048f6545418765d79a3c07

对我来说这看起来很好(或者至少看起来像是git协议)。

然后我们尝试在机器中设置他的公钥。他给我发了他的公钥,看起来像是:

ssh-rsa [key blablablabla] raimo@DESKTOP

我在git框的用户帐户中将其添加到了authorized_keys文件中,但事情却完全相同。他无法使用git推送,我在服务器日志中得到的错误是:

sshd[14411]: Failed publickey for ramon from [ip address]

一直以来,他都可以使用PuTTY SSH服务器而不会出现问题。 (现在我想到了,我没有让他在git bash中使用命令行SSH客户端进行SSH;会报告结果)。

发生了什么?

1 个答案:

答案 0 :(得分:1)

首先,检查远程服务器上的~ramon的.profile / .bashrc是否有任何回声,显示任何内容。如果是这样,那可能会打扰一些git命令,比如clone。

在本地,检查其环境变量GIT_SSH

的值

如果是TortoisePlink.exe:

  • 尝试将其设置为ssh.exe as in here
  • 使用putty将ppk密钥转换为id_rsa / id_rsa.pub私钥/公钥

OP PaulJ确认in the comments这是一个SSH密钥问题

  

最后问题只是他没有正确配置他的公钥/私钥对。