我正在尝试安装mercurial-server。在将我的密钥添加到keys/root并刷新身份验证后,我尝试克隆hgadmin-repo,但得到以下错误:
$ hg clone ssh://hg@<domain>/hgadmin
remote: mercurial-server: no such repository hgadmin
abort: no suitable response from remote hg!有人知道问题出在哪里吗?
发布于 2010-04-21 11:09:42
我也遇到了同样的问题,对我来说,这是hgadmin存储库的安装问题。当我安装这个包的时候,我收到来自python的错误,说mercurial包没有安装。我假设这是在mercurial-server试图初始化hgadmin存储库时发生的。因此,当我查看hgadmin respistory时,没有.hg目录:
root@myshost:/var/lib/mercurial-server/repos# cd hgadmin/
root@myshost:/var/lib/mercurial-server/repos/hgadmin# ls -a
. ..为了解决这个问题,我这样做了:
easy_install mercurial
sudo apt-get purge mercurial-server
sudo rm -rf /var/lib/mercurial-server
sudo apt-get install mercurial-server然后继续这里的说明:
http://kurtgrandis.com/blog/2010/03/20/gitosis-for-mercurial/
发布于 2012-12-04 02:39:46
非常感谢Randy在这里揭露了确切的问题。
我努力解决了同样的问题,并找到了另一种方法来解决它(不需要清除和重新安装)。
您可以手动初始化hgadmin存储库并安装钩子,达到与正常安装相同的效果。不过,您需要以'hg‘用户的身份登录。
操作步骤
这些命令适用于我的环境(Ubuntu 10.04.4 / Hg 1.4.3)
首先初始化/var/lib/ mercurial -server/repos/hgadmin中的mercurial存储库:
$ sudo su hg
$ cd ~/repos/hgadmin/
$ hg init然后,我发现正常初始化的hgadmin存储库(我将其部署在VM中进行比较)的唯一区别是.hg/hgrc文件中的挂钩。所以打开这个文件:
$ vim .hg/hgrc并粘贴此确切内容:
# WARNING: when these hooks run they will entirely destroy and rewrite
# ~/.ssh/authorized_keys
[extensions]
hgext.purge =
[hooks]
changegroup.aaaab_update = hg update -C default > /dev/null
changegroup.aaaac_purge = hg purge --all > /dev/null
changegroup.refreshauth = python:mercurialserver.refreshauth.hook发布于 2010-04-02 04:21:04
您确定您的克隆命令语法正确吗?我看到其中至少有两个错误:
对于推送,您必须将您要克隆的存储库(而不仅仅是destination)
失败的示例(缺少源代码库,并且在‘home’前仅使用一个'/‘)
$ hg clone ssh://John@127.0.0.1/home/John/delme失败的示例(缺少源代码库)
$ hg clone . ssh://John@127.0.0.1/home/John/delme之后的示例
$ hg clone . ssh://John@127.0.0.1//home/John/delmehttps://stackoverflow.com/questions/2562218
复制相似问题