Version control 使用Hg Convert扩展插件,Branchmap选项

Version control 使用Hg Convert扩展插件,Branchmap选项,version-control,mercurial,tortoisehg,Version Control,Mercurial,Tortoisehg,我有两个Mercurial repositoriesRepoA和RepoB,两个人在各自的repo上独立工作,RepoA只有一个分支(默认),但有9个提交,RepoB有2个分支,默认和实验1,每个分支大约有30个提交。现在证明RepoB是RepoA的一个子集,也就是说RepoB中的很多东西都可以放入RepoA中。我想把RepoB的所有内容拉(导入)到RepoA的一个分支中。我不希望导入到RepoA的默认分支,而是RepoA中的一个命名分支,名为Developer1WIP。我特别需要知道 如何在R

我有两个Mercurial repositoriesRepoARepoB,两个人在各自的repo上独立工作,RepoA只有一个分支(默认),但有9个提交,RepoB有2个分支,默认和实验1,每个分支大约有30个提交。现在证明RepoB是RepoA的一个子集,也就是说RepoB中的很多东西都可以放入RepoA中。我想把RepoB的所有内容拉(导入)到RepoA的一个分支中。我不希望导入到RepoA的默认分支,而是RepoA中的一个命名分支,名为Developer1WIP。我特别需要知道

  • 如何在RepoA中创建命名分支(Developer1WIP)并将所有RepoB导入RepoA上的Developer1WIP分支
  • 我相信带有branch map的HgConvert扩展是一个很好的方法。 “branchmap是一个文件,允许您在从任何外部存储库引入分支时重命名分支。”

  • 这个文件是什么
  • 它将在哪里创建?其中应该包含什么
  • 我可以得到一些关于如何在Windows中使用此命令的示例吗

  • 一切都记录在Mercurial wiki中,以下是:

    --分支地图

    从v1.3开始

    branchmap是一个文件,允许您在创建分支时重命名该分支 从任何外部存储库引入。当用于 结合拼接图,它允许一个强大的组合 帮助修复甚至是管理最糟糕的存储库,并将其 进入结构良好的Mercurial存储库。分支地图包含 线条

    original_branch_name new_branch_name
    
    “原始分支机构名称”是 源存储库中分支的名称,“新分支名称”为 分支的名称是目标存储库。这是可以使用的 将一个存储库中的代码从“默认”移动到命名分支

    请记住,“default”标识Mercurial的默认分支 存储库,默认情况下不会以日志、标头或 父母的命令。要删除命名的分支标记,请将其转换为 带有类似branchmap的“default”

    original_branch_name default
    
    修订版仍然存在,但没有 不再附加到原始命名分支

    因此,基本上您将创建一个包含以下内容的文本文件:

    default Developer1WIP
    Experiment1 Developer1WIP
    
    (转换后是否希望在同一个分支上同时使用default和Experiment1?您的问题有点不清楚,但我认为您是这样做的。)

    然后发出convert命令:

    hg convert ORIGINAL_REPO CONVERTED_REPO --branchmap MAP.TXT
    

    谢谢你的回复。我确实读了文件,但不清楚是什么东西去了哪里。你的例子很清楚。非常感谢