从另一个存储库中的现有目录创建Mercurial存储库?

时间:2012-11-15 18:24:29

标签: mercurial

我想将我的一个Mercurial存储库拆分为两个单独的存储库。特别是,我想获取一个位于存储库根级别的目录,并将其转换为自己的存储库。

我最初想到如何执行此操作是告诉现有存储库忘记该特定目录,将目录添加到.hgignore,然后将目录转换为它自己的存储库。但是,我想保留新存储库中目录的历史记录。

我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:3)

使用--filemap选项的

Convert extension将执行此操作。请参阅Converting from Mercurial部分

  

过滤Mercurial存储库以获取其子集也很有用   现有的。例如,转换a的子目录subfoo   存储库foo进入具有自己生命的存储库(同时保留它   完整的历史),执行以下操作:

$ echo include subfoo > /tmp/myfilemap
$ echo rename subfoo . >> /tmp/myfilemap
$ hg convert --filemap /tmp/myfilemap /path/to/repo/foo /tmp/mysubfoo-repo