根据http://dev.lshift.net/paul/mercurial-server/docbook.html上的"创建存储库",我们需要做的就是创建新的存储库 - clone不存在.
但在1.1中我不起作用.如果我们看代码:
if cmd is None:
fail("direct logins on the hg account prohibited")
elif cmd.startswith('hg -R ') and cmd.endswith(' serve --stdio'):
repo = getrepo("read", cmd[6:-14])
if not os.path.isdir(repo + "/.hg"):
fail("no such repository %s" % repo)
dispatch.dispatch(['-R', repo, 'serve', '--stdio'])
elif cmd.startswith('hg init '):
repo = getrepo("init", cmd[8:])
if os.path.exists(repo):
fail("%s exists" % repo)
d = os.path.dirname(repo)
if d != "" and not os.path.isdir(d):
os.makedirs(d)
dispatch.dispatch(['init', repo])
else:
fail("illegal command %r" % cmd)
Run Code Online (Sandbox Code Playgroud)
我们可以看到,要创建我们需要传递特定init …
我正在尝试安装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!
Run Code Online (Sandbox Code Playgroud)
谁知道问题是什么?
我在我的一台机器上安装了mercurial-server,在那里克隆了我的项目,它有3个子目录,当我尝试将它克隆回另一个位置时,我收到一个错误:
remote:mercurial-server:无法在现有仓库下创建仓库
中止:远程hg没有合适的回复!
所以我开始认为mercurial-server不处理subrepo.
任何线索?
我刚才创建了一个存储库作为测试,但我现在想要创建一个具有相同名称的不同存储库 - 有没有办法使用mercurial-server删除现有存储库,并创建另一个具有相同名称的存储库?或者也许是一种覆盖存储库内容的方法?
我正在尝试使用来自LShift的mercurial-server在我的服务器(Debian Lenny)上管理我的mercurial repos.我正在使用本教程:http://kurtgrandis.com/blog/2010/03/20/gitosis-for-mercurial/
但是当我尝试克隆hgadmin repo时,ssh会要求我输入密码.
hg clone ssh://hg@MyMercurialServer/hgadmin
Run Code Online (Sandbox Code Playgroud)
但我从来没有为hg用户设置密码.它是使用apt-get安装创建的.通常,身份验证应该使用我的公共ssh密钥(从mercurial-server复制到keys/root目录).但似乎mercurial-server不使用我的公钥.我也刷了特权
sudo -u hg /usr/share/mercurial-server/refresh-auth
Run Code Online (Sandbox Code Playgroud)
将公钥复制到mercurial-server keys/root目录后.此外,我找不到mercurial-server的任何日志文件.有谁知道,如何解决这个问题?
谢谢.