Svn 将Mercurial存储库镜像到Subversion?

Svn 将Mercurial存储库镜像到Subversion?,svn,mercurial,mirroring,Svn,Mercurial,Mirroring,我正在使用Mercurial开发一个客户项目。在我为此工作了两周之后,客户现在要求我将所有代码保存在他们的SVN回购中 我想继续使用Mercurial进行开发,但为了让客户满意,还需要将所有提交(带消息)导出到SVN中 这可能吗?您可以使用Mercurial作为其subversion存储库的客户端 你退房了吗?这允许您在Mercurial中拥有完整的历史记录 详情请参阅: 它提供了三种使用Subversion的方法。确保使用一种,不要混合使用 用hgsubversion 使用MQ 转换扩展名 [

我正在使用Mercurial开发一个客户项目。在我为此工作了两周之后,客户现在要求我将所有代码保存在他们的SVN回购中

我想继续使用Mercurial进行开发,但为了让客户满意,还需要将所有提交(带消息)导出到SVN中


这可能吗?

您可以使用Mercurial作为其subversion存储库的客户端

你退房了吗?这允许您在Mercurial中拥有完整的历史记录

详情请参阅:

它提供了三种使用Subversion的方法。确保使用一种,不要混合使用

  • 用hgsubversion
  • 使用MQ
  • 转换扩展名
  • [个人经历]

    我发现hgsubversion在将suversion回购转换为Mercurial回购时可能会出现问题,这比hgsubversion更好

    # This usually fails for a svn repo with 
    # large history or large files in revchanges
    
    hg clone svn+http://.../svn local-hg
    
    # If the above has any issues and dies before converting the repo, use hg pull
    hg pull
    
    问题:您已经有了现有的回购协议

  • 我想最好的方法是使用上述方法之一从subversion回购中创建另一个Mercurial回购
  • 将您的变更集从旧的回购中拉入新的回购,以获取前一个回购中的所有变更和历史记录
  • 现在,您可以将更改提交到svn存储库了

  • 那么,这个解决方案是否允许我继续使用existhg repo,将更改同步到他们的SVN repo中?更好的是能够从SVN中提取新的更改(以防有人也在他们这边进行更改)。这可行吗?@Jon L:是的,你需要使用三种方法之一克隆svn回购协议。这将允许您使用Mercurial作为subversion的客户端。然后,您需要通过hg pull将新回购协议与旧回购协议的更改同步。然后使用新的回购协议将更改推送到svn回购协议。好吧。。。从svn服务器克隆一个空的repo,然后hg从当前的hg repo中提取更改。我遇到的一个问题是,首先使用hgsubversion从svn提取,然后从现有的hg repo提取,这意味着您必须强制提取,因为存储库是不相关的。这也意味着拉入将带来来自hg的整个回购,因为mercurial无法确定来自旧存储库的hg rev 101应该有rev 100作为父版本。我还没有找到克服这个问题的方法。