我有2个Mercurial存储库-- RepoA 和 RepoB ,两个人在各自的repos上独立工作,RepoA只有一个分支(默认),但是有9个提交,RepoB有2个分支,Default和Experiment1,每个分支都有大约30个提交。现在我们发现RepoB是RepoA的一个子集,也就是说,RepoB中的很多东西都可以放入RepoA中。我想把RepoB的所有内容都拉到RepoA的一个分支中。我不希望导入成为RepoA的默认分支,而是在RepoA中指定一个分支,称为RepoA我特别需要知道
我认为带分支地图的HgConvert扩展是一个很好的前进之路。“分支映射是一个文件,允许您在从任何外部存储库导入分支时重命名它。”.
,
发布于 2011-09-27 10:58:53
所有内容都记录在Mercurial wiki中,以下是ConvertExtension页面的摘录
..。 -分支图 自1.3节以来 分支映射是一个文件,允许您在从任何外部存储库导入分支时重命名它。当与剪接地图一起使用时,它允许一个强大的组合来帮助修复即使是管理最糟糕的存储库,并将它们转化为结构良好的汞存储库。分支映射包含表单的行。 original_branch_name new_branch_name "original_branch_name“是源存储库中分支的名称,"new_branch_name”是分支的名称是目标存储库。这可以用于将存储库中的代码从“默认”移动到指定的分支。 请记住,“默认”标识汞存储库的默认分支,默认情况下日志、头或父命令不会显示该分支。若要擦除命名分支标记,请使用如下所示的分支映射将其转换为“默认” original_branch_name默认值 修订将仍然在那里,但不再附加到原来的命名分支。 ..。
基本上,您将创建一个包含以下内容的文本文件:
default Developer1WIP
Experiment1 Developer1WIP(您希望在转换后在同一个分支上同时使用默认和Experiment1吗?)你的问题有点不清楚,但我认为你问了。)
然后发出转换命令:
hg convert ORIGINAL_REPO CONVERTED_REPO --branchmap MAP.TXThttps://stackoverflow.com/questions/7567636
复制相似问题