清除 mercurial 中的本地分支
Purge local branchs in mercurial
免责声明:我是软件开发新手,所以我的术语可能不准确。
目前的源码是这样的(本项目使用mercurial进行版本控制):
---(r 1000) -> (r 1001) -> (r 1002) master, remote
\
(r 1003) -> (r 1004) -> (r 1005) feature1, local
我在 (r 1004) 中使用了专有的第 3 方 header,并在 (r 1005) 中用它替换了一个开源替代品。我的理解是它仍然显示在日志中,这是我想避免的。我想完全清除 (r 1004)。我该怎么做,以上面的表示为例?
您将需要使用 hg strip
或 hg histedit
。 在这种特殊情况下 hg strip -r 1004
. 更正 :使用 hg histedit
,例如 hg histedit --outgoing
(参见 hg help histedit
更多)。 strip
和 histedit
都曾经是外部扩展,但现在捆绑在一起(我不确定哪个版本的 Mercurial 将它们添加为标准)。
请注意,您必须从每个拥有它的存储库中手动删除此特定修订版,否则它会不断出现。 (Git 也会出现同样的问题,我提到这个问题是因为出于某种原因该问题被标记为 git。)
免责声明:我是软件开发新手,所以我的术语可能不准确。
目前的源码是这样的(本项目使用mercurial进行版本控制):
---(r 1000) -> (r 1001) -> (r 1002) master, remote
\
(r 1003) -> (r 1004) -> (r 1005) feature1, local
我在 (r 1004) 中使用了专有的第 3 方 header,并在 (r 1005) 中用它替换了一个开源替代品。我的理解是它仍然显示在日志中,这是我想避免的。我想完全清除 (r 1004)。我该怎么做,以上面的表示为例?
您将需要使用 hg strip
或 hg histedit
。 在这种特殊情况下 更正 :使用 hg strip -r 1004
.hg histedit
,例如 hg histedit --outgoing
(参见 hg help histedit
更多)。 strip
和 histedit
都曾经是外部扩展,但现在捆绑在一起(我不确定哪个版本的 Mercurial 将它们添加为标准)。
请注意,您必须从每个拥有它的存储库中手动删除此特定修订版,否则它会不断出现。 (Git 也会出现同样的问题,我提到这个问题是因为出于某种原因该问题被标记为 git。)