使用带有SVN外部的Mercurial 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状态现在会显示所有“新”文件?在他们面前.

问:你是否将它们添加到存储库,或者将外部文件添加到.hgignore?

尝试任一选项都会导致同样的问题.我无法将我的更改推送到克隆的主人.

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

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

点赞