gpt4 book ai didi

version-control - 修复错误 merge

转载 作者:行者123 更新时间:2023-12-04 07:09:05 27 4
gpt4 key购买 nike

在我们的大型项目配置中,我们在一个存储库中有3个分支。一个是稳定版本分支,其中完成了紧急错误修复;一个是功能分支,其中包含新功能代码;一个是UAT分支,其中将错误修复和新功能合并到一起,以提供最新的代码库。 。

我们已经将全部新功能代码合并到UAT分支中,而没有任何问题。之后,我们将带有错误修复的稳定分支合并到了UAT分支中,但这似乎具有删除新功能代码的效果。我发现此问题是由某人将UAT合并到稳定状态中引起的(这本来是不会发生的!)。现在,当我尝试将错误修复程序合并到UAT中时,它将删除所有新功能代码。

有没有一种方法可以将合并的影响从UAT消除为稳定,同时仍然保留此“不良合并”后代的错误修复程序?我曾尝试撤消合并,但似乎根本没有任何效果。我可以剥离并重新添加所需的变更集吗?

提前致谢。

最佳答案

实际上,通过一些反复试验,我自己设法解决了这一问题。

首先,您需要在mercurial.ini文件中启用移植和mqMerge扩展名。将以下行添加到扩展标题下方

   transplant=
mq=


将您的存储库克隆到新位置。
在您的新仓库中,使用strip命令清除历史记录,以删除不良合并,清除不良合并的效果。 (请注意,这将删除所有后代变更集)

然后,您需要使用类似下面的命令,按时间顺序从另一个存储库中选择所有必需的变更集

    hg transplant -s "otherRepo" -b "branchName" "changesetHexNumber"


对所有必需的变更集重复移植命令。哇!

注意:如果您使用的是中央存储库,则也需要在该存储库上删除有问题的合并/更改集,否则本地存储库将认为您有待处理的变更集。

关于version-control - 修复错误 merge ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7825269/

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