【问题标题】:Cannot clone git repo from ubuntu server with TortoiseGit无法使用 TortoiseGit 从 ubuntu 服务器克隆 git repo
【发布时间】:2012-07-10 12:07:39
【问题描述】:

我在运行 gitolite 的 ubuntu 服务器上 git clone 时遇到了一些问题。

首先,我从想要从服务器克隆存储库的开发人员那里获得了一个公钥。这是一个用 putty 创建的 rsa 密钥。因此,我做了以下操作,将其从 putty 样式解析为 openssh 格式:

ssh-keygen -i -f /tmp/ssh2/YourName.pub > /tmp/openssh/YourName.pub(取自http://gitolite.googlecode.com/git/doc/ssh-troubleshooting.mkd?r=d3a663d03f1027f909732d55d0519bdd84edb62c

然后将公钥连同 repo 的新条目和配置文件中的新用户上传到 gitolite-admin repo。

到目前为止,一切都很好。

开发人员正在使用 **** 和 putty 连接到服务器,该服务器在 非标准 上运行 git端口,他一遍又一遍地遇到同样的错误:

Cloning into 'D:\path\to\dirctory'...
error: Recv failure: Connection was reset while accessing http://sub.domain.com/info/refs
fatal: HTTP request failed

git did not exit cleanly (exit code 128)

有人可以就这个问题给我一些建议吗?


编辑:

与此同时,我们设法通过使用ssh:// 协议而不是git:// 来处理存储库git clone,因此这似乎不是 rsa_public.key 或类似的问题.

服务器上的 iptables 正在接受通过 git 端口的连接,但它不断给出上述错误。

【问题讨论】:

  • 开发者在安装msysgit/putty时可以选择OpenSSH吗? (如codeslinging.blogspot.fr/2010/01/…),并以通常的方式生成其密钥(如wiki.sharpdevelop.net/HowToSetUpGit.ashx 所示)。所以反过来stackoverflow.com/questions/10224972/…
  • 嘿,据我所知,开发人员之前安装了 putty,安装了 msysgittortoisegit 并用 putty 创建了他的密钥..
  • 当然,但是当他安装 msysgit 和 tortoiseGit 时,他可以在 openssh(与 msysgit 集成)和外部 ssh 层(putty)之间进行选择。
  • 另外,用户用来克隆他的远程--gitolite-managed--repo 的确切地址是什么?我希望不是 http(s) 的吗?
  • 他选择了外部 ssh 层(putty)afaik。该地址不是 http(s) 的。他使用了 git://git@remote.server.com:port/repo.git

标签: windows git ubuntu-10.04 tortoisegit gitolite


【解决方案1】:

OP herom最初评论说开发者使用git://git@remote.server.com:port/repo.git作为地址。

我问是否有任何防火墙问题,阻止使用 git 端口 (9418),但 OP 提到:

不,不应该有防火墙问题,因为 iptables 正在接受 git 端口的流量 - 该端口被转发并且在从外部连接时似乎是另一个端口...
现在,开发者通过ssh:// 克隆了repo(甚至连接到ssh-port!)

我注意到 git 端口有时会被阻塞,如 this thread 所示。
如果不在客户端,可能在服务器端。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-02
    • 2021-07-16
    相关资源
    最近更新 更多