gpt4 book ai didi

svn - cherrypick svn merge branch to trunk,随后与 --reintegrate 合并?

转载 作者:行者123 更新时间:2023-12-01 02:53:38 27 4
gpt4 key购买 nike

所以我有这个项目,在 2 个版本中同时进行工作,trunk 和 branch1。在某些时候我被告知“不要再为 rel1 构建,修复 rel2 中的那些错误。”所以我在 branch1 中修复了错误,这些错误也适用于主干。后来我被告知“如果我们发布带有那些已知错误的 rel1,那将是一个很大的 PITA。请同时在 rel1 中修复它们。”

所以,我的问题是(~/rel1 是主干的当前未修改的工作副本。RevM、RevN 是 branch1 中的修订号,用于我想合并回主干的一系列修订):

如果我做一个

cd ~/rel1
svn merge -r RevM:RevN ^/branch1

它会如何影响以后的 svn merge --reintegrate 从分支到主干?请记住,RevM 之前的 branch1 中有修订,RevN 之后会有更多修订。特别是,当我最终重新整合时,是否会像我最初在 rel1 中完成修复并将它们合并到 rel2 中一样,就像一开始就应该做的那样?

最佳答案

从 Twig 到树干的 cherry-pick 变化也一直困扰着我。这是一个适用于您的情况的解决方案,诀窍是阻止精心挑选的更改再次合并到分支中。

cd ~/rel1
svn merge -r RevM:RevN ^/branch1
svn commit -m "cherry pick RevM:RevN from branch1 into rel1"

现在假设这个提交创建了 RevX。进入您的分支并使用 --record-only 选项阻止此修订在未来的合并操作中进行。

cd ../branch1
svn merge -c RevX --record-only ^/rel1
svn commit -m "mark RevX as already merged to block it from future merge actions"

现在您应该能够像往常一样再次合并从 rel1branch1 的进一步更改,并在完成后将您的分支重新集成到 rel1 中。

关于svn - cherrypick svn merge branch to trunk,随后与 --reintegrate 合并?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11458951/

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