根据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)我们可以看到,要创建,我们需要传递特定的init命令。
此命令如预期的那样工作:
"TortoisePlink.exe" -ssh -2 hg@mercurial "hg init tst"但我希望这是一个更优雅的命令。
是文档中的"bug“还是我做错了什么?
更新
我的问题只是关于使用mercurial-server远程创建存储库。
更新2
这是我的误解,因为我不清楚是否应该已经创建了本地存储库,这将被远程克隆。
发布于 2011-05-05 12:13:41
我发现使用Mercurial服务器创建一个新的回购非常简单。假设您拥有这个权限,并且路径“/dir1/dir1 2/”已经存在于服务器上,那么简单地(使用命令行):
mkdir new
cd new
hg init
hg clone . ssh://hg@server/dir1/dir2/new干杯,
克里斯多夫。
发布于 2011-05-04 12:38:30
您所引用的页面用于共享现有存储库,而不是专门用于创建新的空存储库。您给出的命令hg init tst对于初始化一个新的空存储库是正确的。我认为它唯一的‘不雅’之处在于您正在远程执行它,因此需要给出附加的ssh命令。存储库创建命令本身hg init非常简单。
https://stackoverflow.com/questions/5877959
复制相似问题