使用带有SVN外部的Mercurial hgsubversion扩展

时间:2010-08-19 13:36:18

标签: mercurial svn-externals hgsubversion

我正在使用Mercurial与Subversion存储库进行通信,而存储库当前正在使用SVN外部来引入另一个存储库。

hgsubversion非常适合与存储库进行通信,但它似乎不适用于SVN Externals。有没有办法配置它来使用它?

编辑:部分解决方案

SVN外部可以很好地拉下来。在您的存储库中,添加一个名为.hgsvnexternals的新文件(如果Windows在创建时抱怨没有文件名,请尝试运行copy .hgignore .hgsvnexternals)。关于空白是很挑剔的,应该包含如下示例的文本:

[.]
 MyExternalProject svn://some.url/svn/MyExternalProject/trunk

行的开头有一个空格,名称和URL之间有一个空格。如果间距不对,则无效。将此文件添加到文件后,返回命令行并运行:

hg svn updateexternals

然后它应该从Subversion获取外部。新问题是hg status现在会在其前面显示所有带有?的“新”文件。

问:您是hg add他们到存储库,还是将外部文件添加到.hgignore

尝试任一选项都会导致同样的问题。我无法hg push我对克隆主人的更改。

1 个答案:

答案 0 :(得分:2)

它可以工作,但只能使用标准布局(即主干/分支/标签)克隆。我们需要在标准布局工作之前修复一些错误。

在接下来的几天内寻找一些新的文档(或者在外部检查hgsubversion maillist archives获取补丁线程)。