【发布时间】:2011-07-27 11:22:51
【问题描述】:
我正在尝试使用 Convert 扩展从现有的 Mercurial Repo(调用 MainRepo)中提取一个文件夹(称为 Project1),以进行 Mercurial 到 Mercurial 的转换。我在 Windows XP 下遵循 Mercurial 开发人员(以及网络上其他地方)描述的方法:
C:\MainRepo>echo include Project1 > ~myfilemap
C:\MainRepo>echo rename Project1 . >> ~myfilemap
C:\MainRepo>hg convert --filemap ~myfilemap . C:\Project1Repo
C:\MainRepo>cd \Project1Repo
C:\Project1Repo>hg update
这将创建带有 Mercurial 文件夹/文件的新存储库 (Project1Repo)。 但它没有:
1) 在文件夹 Project1 中进行与项目所做更改相关的历史记录。 (只存在 MainRepo 的第一个历史条目和一个 Convert 项)。
2) 将所有源代码文件从 MainRepo\Project1 复制到 Project1Repo。
我在 stackoverflow 中看到了其他类似的问题和答案,但这些似乎没有帮助(我遵循了其中讨论的方法): Can I clone part of a Mercurial repository?
所以问题是:我如何从 MainRepo 中提取一个子文件夹,只保留完整的子文件夹历史并完成到一个新的 Repo 并同时传输源文件? (虽然我猜直接复制会做最后)。保留重要的历史记录 - 在这种情况下,我可以在日期或变更集编号之后进行此操作。
任何帮助都非常感谢,因为我对此比较陌生
谢谢
【问题讨论】:
标签: mercurial repository extract subdirectory