gpt4 book ai didi

git - 如 Adam Dymitruk ("branch per feature"所述,修复工作流程中旧版本中的错误)

转载 作者:太空狗 更新时间:2023-10-29 13:47:18 28 4
gpt4 key购买 nike

我一直在阅读 Adam Dymitruk's git workflow ,这一切都很有道理。

我找不到任何讨论的一件事是修复旧版本中的错误。想象一下带有 7.0、7.1、7.2、7.3、7.4、7.4.1、7.4.2、7.8、8.2 和最新 8.3 标记的“master”分支

特定客户端的生产版本是 7.2,发现了一个必须修复的错误。

在 8.3.1 中修复它并将客户端从 7.2 移动到 8.3.1 是客户端无法接受的。

那么,有推荐的工作流程吗?

我可以从 7.2 标签创建主分支的一个分支,将此分支称为 release-7.2.x 然后,像对待主分支一样对待“release-7.2.x”——从基线创建一个功能分支( 72bug),修复bug等,最终将feature分支 merge 到'release-7.2.x'中,做一个build,做一个7.2.1 tag,然后投入生产。 'release-7.2.x' 将永远存在,master 也是如此,因此可以在 release-7.2.x 上对 7.2.x 进行更多修复。

当然,人们不想失去 7.2 对当前工作的修复,因此可以从当前的主基线 (8.3) 创建一个功能分支,并将错误分支 (72bug) merge 到这个功能分支中。此功能分支将像当前发布周期/冲刺的任何其他功能一样对待。因此,在周期结束时,最新的基线 (8.4) 将包含错误修复。

使用 Adam 工作流程的其他人如何解决这种情况?

最佳答案

如果您不能将客户端迁移到当前版本,那么就真的没有办法从 7.2 标签开始一个新分支。

我建议不要修复 72bug 分支上的错误并将其 merge 到 release-7.2.x 分支和当前功能分支中,而是建议修复当前功能分支上的错误,然后使用 git cherry-pick 将修复程序反向移植到 release-7.2.x 分支。这将有助于保持您的历史干净,这样您当前的开发就不会仅仅因为一个客户的需要而突然依赖于旧版本。

关于git - 如 Adam Dymitruk ("branch per feature"所述,修复工作流程中旧版本中的错误),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16966375/

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