免责声明:我是软件开发的新手,所以我的术语可能不准确。
当前的源代码看起来像这样(这个项目使用mercurial进行版本控制):
---(r 1000) -> (r 1001) -> (r 1002) master, remote
\
(r 1003) -> (r 1004) -> (r 1005) feature1, local
我在(r 1004)中使用了专有的第3方标题,并在(r 1005)中替换了它的开源替代方案。我的理解是它仍然显示在日志中,这是我想要避免的。我想完全清除(r 1004)。我如何使用上面的表示作为例子呢?
答案 0 :(得分:0)
您需要使用hg strip
或hg histedit
。 在此特定情况下 更正:使用hg strip -r 1004
。hg histedit
,例如hg histedit --outgoing
(有关详情,请参阅hg help histedit
) 。 strip
和histedit
曾经是外部扩展,但现在捆绑在一起(我不确定Mercurial的哪个版本将它们添加为标准版)。
请注意,您必须从拥有它的每个存储库中手动删除此特定修订版,否则它将继续返回。 (同样的问题出现在Git中,我提到这个问题是因为某些原因问题标记为git。)