Git Flow:在暂存服务器上测试功能



我正在使用 Git-Flow 进行工作项目,无法确定处理以下情况的最佳方法:

开发人员 Anya 创建功能 [功能1]

开发人员弗雷德创建功能 [功能2]

两位开发人员都已经按照规范完成了他们的功能,现在希望将它们放入暂存服务器中,以便为下一个版本进行问答/批准。

我看到的选项如下:

  1. 两个开发人员都完成了将它们合并到开发分支中的功能。暂存服务器已签出开发分支。

    这里的问题是,假设在测试Feature2期间发现存在错误,或者可以添加不可预见的增强功能,甚至可能被放弃或无限期延迟。现在所有功能都被搁置,发布延迟,直到 Feature2 修复/满足新规范,或者我们恢复合并并重新打开功能并且发布开始。这是一个可以接受的解决方案吗?

  2. 另一种选择是存在称为暂存的第 3 个独立分支。开发人员单独将其功能合并到暂存分支中,并推送到测试每个功能的暂存远程。该功能只有在获得批准后才会完成并合并到开发分支中。

    这种方法的好处是开发分支基本上只包含已批准的功能,并且可以随时从中获取版本。缺点是我们需要切换暂存服务器以签出开发分支,以便在发布阶段可以测试所有内容。此外,如果功能被放弃或我现在想不出的其他原因,暂存分支可能会偏离现实,这意味着它需要定期从 live(?) 中重新检查出来。

我意识到这可能是部署管道和 CI 修复的问题,但我很好奇其他人如何使用 git 分支模型或 Git Flow 解决这个问题。

由于功能分支中的代码需要由 QA 测试/批准,因此开发人员可以将功能分支分别推送到远程和QA 合并/测试功能分支。即使一个功能分支未获批准,也不会影响其他功能分支发布新版本。

最新更新