gpt4 book ai didi

mercurial - 在 Mercurial 中将线性历史分为两个分支

转载 作者:行者123 更新时间:2023-12-03 06:44:37 25 4
gpt4 key购买 nike

我有一个 Mercurial 存储库历史记录,如下所示:

A -> B -> C -> N1 -> N2 -> N3 -> D -> E -> F

我想将其转化为以下历史:

A -> B -> C -> D -> E -> F
\_ N1 -> N2 -> N3

鉴于我有一个克隆,其历史记录止于 C,那么最好的继续方法是什么? D E F 变更集与 N1 N2 N3 变更集不冲突。好吧,至少我希望如此;)

最佳答案

无需克隆,您可以在原始存储库中工作。您可以将 D、E 和 F 移植到 C 之上,创建副本 D1、E1 和 F1(与原始版本相同,前提是不存在冲突的更改)。你会得到这个:

A -> B -> C -> N1 -> N2 -> N3 -> D -> E -> F
\_ D1 -> E1 -> F1

然后你就可以剥离原件了。请参阅下面的脚本。

$ hg update C
$ hg transplant D E F
$ hg strip D

您必须启用两个扩展:transplantmq。为此,请将这些行添加到您的 hgrc 中:

[extensions]
transplant=
mq=

更新:从 Mercurial 2.0 开始,可以使用 graft (内置命令)代替此处的 transplant; rebase ,如 Laurens Holst suggests ,应该同样有效。

关于mercurial - 在 Mercurial 中将线性历史分为两个分支,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8467624/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com