Svn Mercurial中的跨存储库合并?

Svn Mercurial中的跨存储库合并?,svn,mercurial,Svn,Mercurial,我正在考虑从SVN切换到Hg,目前项目Foo有一个典型的SVN布局: Foo trunk branches 1.0 1.1 我可以使用Hg import命令将此结构导入到Hg中,为主干和两个分支创建一个单独的存储库(通过使用--config convert.Hg.clonebranches=1import开关) 现在,如果客户在Foo的v1.0中发现一个bug,我如何将此修复应用于1.1和trunk存储库?它们是旧SVN分支的单独副本,所以hg merge不起作用,是吗

我正在考虑从SVN切换到Hg,目前项目Foo有一个典型的SVN布局:

Foo
  trunk
  branches
    1.0
    1.1
我可以使用
Hg import
命令将此结构导入到Hg中,为主干和两个分支创建一个单独的存储库(通过使用
--config convert.Hg.clonebranches=1
import开关)

现在,如果客户在Foo的v1.0中发现一个bug,我如何将此修复应用于1.1和trunk存储库?它们是旧SVN分支的单独副本,所以
hg merge
不起作用,是吗


如果我是在Hg上从头开始一个新项目,那么我可以在不同的版本中使用标签,并且可以轻松地将一个标签的更改合并到另一个标签,但是从SVN导入时我没有这种奢侈。。。还是我错过了什么?

我喜欢
hg-transplant
()这样:这将需要提交并将其移动到某个地方。s选项将允许您将其从一个回购协议移动到另一个回购协议


您还可以指定要进行的合并,以及单个修订、多个修订,或者让它启动“交互式变更集选择器”(不管这意味着什么)。(虽然我没有尝试过回购之间的合并选项……但我知道指定变更集非常有效!)

您应该能够使用普通的推/拉合并来来回获取变更。Convert足够智能,1.0和1.1中相同的部分将是相同的变更集。因此,在1.0中进行更改,您应该能够将其拉入1.1和main,并干净地合并


如果您认为您将从1.1和main进入1.0,那么在进行更改之前,只需
hg update
到一个您知道在1.0中的变更集,并且您也可以在1.0中干净地拉取并合并该变更集。

hg移植不是一个很好的选择,因为这样您就可以使用两个不同的哈希ID进行相同的更改。在这种情况下,他应该能够在它们之间拉/推,然后合并。检查我的问题和答案