gpt4 book ai didi

mercurial - 如何使用 Mercurial 嫁接 merge 变更集

转载 作者:行者123 更新时间:2023-12-04 05:21:20 26 4
gpt4 key购买 nike

我想嫁接一个 merge 变更集:

$ hg graft -UD --log -r 1909
skipping ungraftable merge revision 1909

我的解决方法是:
 hg export -r 1909 | hg import - 
hg commit -m"$(hg log -r 1909 --template 'grafted {node}')"

是否有不支持嫁接 merge 变更集的原因?

最佳答案

merge 变更集有两个父级,因此有两种不同的方式来查看更改的内容。默认情况下,如果您使用 hg diff -c <changeset>它将显示与第一个父级相比的差异,第一个父级通常代表 merge 时的工作目录。如果该假设是错误的,则很容易引入错误。

这导致了一个问题,即为什么要嫁接 merge 变更集而不是原始变更集本身。如果您想要移植一系列变更集并且您正在使用 merge 变更集来“汇总”该系列,您可以一次移植原始的多个变更:hg graft "1000::1005" .

就个人而言,我通常使用 hg rebase对于诸如此类的任务,尽管这需要在您的 hgrc 或 mercurial.ini 中启用 rebase 扩展:

[extensions]
rebase=

关于mercurial - 如何使用 Mercurial 嫁接 merge 变更集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16853597/

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