我有两个Mercurial存储库。两个回购都有自己无关的历史。我们打电话给他们:
我现在想要将Lab
个回购“导入”Main
回购,但有以下约束:
Lab
应存储为Main
。Lab
的更改应位于合并为Main
的分支中。以下https://www.mercurial-scm.org/wiki/MergingUnrelatedRepositories基本上有效,但不会创建分支。
答案 0 :(得分:1)
给定存储库Main
和Lab
,您可以将Lab
存储库合并到主存储库中,并通过执行以下{{1}将其默认分支重命名为其他名称}} extension:
convert
。使用此分支图,实验室更改了"默认"分支机构将被命名为#34; Lab"。如果您的实验室存储库中有其他分支,则可能需要其他条目。default Lab
。这假设Lab和Main存储库目录以及branchmap.txt文件位于当前目录中。相应地调整路径。实验室更改集将添加到主存储库。hg convert Lab Main --branchmap branchmap.txt
hg update Lab
mkdir Lab
d。 hg move * Lab
hg ci -m "Moved Lab files to Lab subdirectory"
hg update default
hg merge Lab
现在,您可以继续修改Lab分支,并根据需要合并为默认值。