从Mercurial迁移到Git并且回归毫不费力?

Bor*_*ard 4 migration git version-control mercurial dvcs

我正在尝试在Git和Mercurial之间做出决定,无论我做出什么决定,我都想知道从一个SCM转移到另一个SCM是多么困难.

我知道在这两个工具中都有导出+导入选项,我只想知道它是否会保留分支,标签等内容.此外,是否会有其他含义,如来自bug跟踪器的提交的破坏引用等?

Mar*_*ler 7

让我回答你的两个问题:

  • 由于它们的基础模型非常相似,因此在两个系统之间进行映射可能非常容易.但是,有一些事情无法来回映射.两个例子:Mercurial中的名称分支在Git中没有直接的等价物,Mercurial不支持Git章鱼合并.

    hg-git这样的工具可以很好地让你使用Mercurial作为Git存储库的客户端.它是系统之间的双向桥梁,这意味着您可以使用它在两个方向上进行转换.它适用于很多人,并会保留标签和分支等内容.

  • 是的,外部工具会有破坏的引用 - 虽然两个工具都使用SHA-1来生成变更集哈希,但是它们有不同的东西,所以为变更集提出了不同的ID,否则它们应该是相同的.