我正在使用Mercurial与Subversion存储库进行通信,并且存储库当前正在使用SVN外部存储来引入另一个存储库。在SVN Externals上使用Mercurial hgsubversion扩展
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
我的更改克隆的主。
什么是SVN扩展?我从来没有听说过它...... – 2010-08-19 15:37:07
@michael对不起,我的术语错了:-)外部! – 2010-08-19 15:43:18
您可能对[此问题感兴趣](http://stackoverflow.com/questions/2570289/making-mercurial-subrepositories-behave-like-subversion-externals) – 2010-08-24 15:54:22