Version control 如何从一开始就删除Mercurial提交

Version control 如何从一开始就删除Mercurial提交,version-control,mercurial,dvcs,Version Control,Mercurial,Dvcs,我们有一个巨大的存储库,其中包含一些非常旧的提交,其中包含巨大的二进制文件。我想让回购协议变得更小,所以我想我可以摆脱前200个承诺。我看到strip删除了所有子体,所以它不适用于这种情况 我想要实现的是摆脱承诺A和B,好像回购协议的第一个承诺是C: [A] ->[B]->[C]->[D]-->[G]-[H] \ ^ \->[E] -[F]----| 这样做是否常见(我从来没有这样做过:),您将如何实现这一点?只允许删除选定的变更集只允许删除选定的变更集是的,这是重

我们有一个巨大的存储库,其中包含一些非常旧的提交,其中包含巨大的二进制文件。我想让回购协议变得更小,所以我想我可以摆脱前200个承诺。我看到
strip
删除了所有子体,所以它不适用于这种情况

我想要实现的是摆脱承诺A和B,好像回购协议的第一个承诺是C:


[A] ->[B]->[C]->[D]-->[G]-[H]
\              ^
\->[E] -[F]----|


这样做是否常见(我从来没有这样做过:),您将如何实现这一点?

只允许删除选定的变更集

只允许删除选定的变更集

是的,这是重复的,最好的解决方案可能是:
hgconvert--config convert.hg.startrev=1234
,但必须注意原始答案中的一个大警告:“警告:新回购协议将有全新的变更集ID,即它与原始回购协议没有任何关系。创建新的回购协议后,每个开发人员都必须克隆新的回购协议,并从原始回购协议中删除其克隆。“是的,这是真的。具有讽刺意味的是,这正是我现在正在做的:这是一个重复,最好的解决方案可能是:
hg convert--config convert.hg.startrev=1234
,但必须注意原始答案中的一个大警告:“警告:新回购协议将有全新的变更集ID,即它与原始回购协议没有任何关系。创建新的回购协议后,每个开发人员都必须克隆新的回购协议,并从原始回购协议中删除他们的克隆。“是的,这是真的。具有讽刺意味的是,这正是我现在正在做的:D