【问题标题】:hg-ssh - cannot clone repository, but pull/push workshg-ssh - 无法克隆存储库,但拉/推有效
【发布时间】:2016-12-19 14:45:55
【问题描述】:

我正在尝试设置一个新的 mercurial 服务器(对我来说是第一次),使用 hg-ssh 服务并且遇到了我可以拉取和推送的问题,但不能将存储库克隆到服务器。

在服务器上的 .ssh/authorized_keys 中,我在密钥之前有以下行:

no-pty,no-port-forwarding,no-X11-forwarding,no-agent-forwarding,command=".../hg-ssh 回购/*”

没有这一行,克隆存储库是可行的,所以这不是路径问题。

我对此感到有些困惑,因为我本来希望 hg-ssh 允许克隆 - 我假设这个是错误的吗? 是否有一些我可能错过的配置?

【问题讨论】:

  • 您在日志中看到了什么错误?如果您尝试使用此密钥ssh 到此帐户,您会看到什么? .../hg-ssh repos/* 听起来不对。 ... 呢?我不确定通配符是否在这里有效。
  • 对不起,通配符是我编辑了在这里发布的完整路径,应该提到这一点。克隆因“非法命令“hg init [path]”而失败。
  • 那是个好主意。您可能会省略一些您认为不相关的内容,但它对功能至关重要
  • 用我的密钥检查了通过 ssh 进行的连接,据我所知,这似乎工作正常。由于上述设置,我没有得到 shell,但这是意料之中的。
  • 也许除了hg-ssh,你还应该允许hg,你不觉得吗?签出这个mercurial-scm.org/pipermail/mercurial/2009-July/027021.html

标签: linux ssh mercurial


【解决方案1】:

我无法从文档中确定 hg-ssh 是否应该允许克隆服务器。

我所做的是换行

command=".../hg-ssh repos/*"

command="[path]/allowed-commands.sh

并在https://serverfault.com/a/803873之后实现了脚本,将所有'hg init'调用直接重定向到hg,同时将所有pull/push请求重定向到hg-ssh。

这适用于拉/推和克隆。

【讨论】:

    猜你喜欢
    • 2012-08-16
    • 2010-10-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-11
    • 2020-07-04
    相关资源
    最近更新 更多