1

我的存储库只有两个分支:默认和稳定。我在稳定的分支中弄得一团糟,但我不知道如何修复它。

当前存储库

默认分支用于新功能

92 is the revision created by the maven-release-plugin.
93 commit on stable
94 merge stable into default
95 to 98 commit on default
99 merge default into stable
100 to 103 commit on stable
104 try to fix the mess with a hg merge -r 98

因为default我想要头是98。为了稳定,我想回到一个单一的头,包括提交9498.

4

1 回答 1

2

Default的头应该是98;不是吗?运行hg heads default以获取default分支上的变更集列表。从你的图表来看,这是 98 并且只有 98。

对于稳定版,听起来您想要hg merge提交 103 和 104。为此,更新到其中一个 ( hg update 103),然后将另一个合并到 ( hg merge 104) 中。

您仍然需要处理提交 93。您是否也想拥有它stable?或者你不想有它的影响?如果你想拥有它stable,也只需将它合并。

如果您根本不想要它的影响stable,那么您需要做的事情会有所不同,具体取决于发生在它身上的事情。它只是在您的本地计算机上,还是您已经将其推送到上游?如果它只是在您的本地计算机上,则运行hg strip 93会将其从您的存储库中删除,并且不会被远程推送。为此,您必须启用mq 扩展

如果你已经往上游推了 93,你就不能剥离它。但是,您可以做一个提交,通过更新到变更集 93 来撤消 93 的影响,然后运行hg backout 93​​. 然后,您可以将新提交合并到stable分支中,就好像您从未提交过 93。93 将在您的历史记录中,但它的代码更改已消失。

于 2013-01-05T02:30:50.277 回答