Git 流程:在登台服务器上测试功能
Git Flow: testing features on a staging server
我正在使用 Git-Flow 进行工作项目,无法确定处理以下情况的最佳方法:
开发者 Anya 创建了一个功能 [Feature1]
开发人员 Fred 创建了一个功能 [Feature2]
两位开发人员都已根据规范完成了他们的功能,现在想将它们放入临时服务器以供 Q&A/approval 下一个版本使用。
我看到的选项如下:
两位开发人员都完成了将他们合并到一个开发分支中的功能。登台服务器已签出开发分支。
这里的问题是假设在Feature2的测试过程中发现有一个bug,或者有一个不可预见的增强可以添加,甚至可能被放弃,或者无限期延迟。现在所有功能都被搁置,发布被推迟,直到 Feature2 成为 fixed/satisfies 新规范,或者我们恢复合并并重新打开该功能,然后发布才会开始。这是一个可以接受的解决方案吗?
另一个选项是存在第三个独立分支,称为暂存。开发人员分别将他们的功能合并到登台分支中,并推送到测试每个功能的登台远程。该功能只有在获得批准后才能完成并合并到开发分支中。
这种方法的好处是开发分支基本上只包含已批准的功能,并且可以随时从中获取发布。缺点是我们需要切换登台服务器以签出开发分支,以便可以在发布阶段测试所有内容。此外,如果功能被放弃或我现在无法想到的其他原因,暂存分支可能会偏离现实,这意味着它需要定期从 live(?) 中重新检查。
我意识到这可能是部署管道和 CI 解决的问题,但我很好奇其他人如何使用 git 分支模型或 Git 流程解决此问题。
由于功能分支的代码需要 tested/approved 由 QA 进行,开发人员可以将功能分支推送到远程和 QA merge/test 功能分支。即使一个特性分支没有通过,也不影响其他特性分支发布新版本。
我正在使用 Git-Flow 进行工作项目,无法确定处理以下情况的最佳方法:
开发者 Anya 创建了一个功能 [Feature1]
开发人员 Fred 创建了一个功能 [Feature2]
两位开发人员都已根据规范完成了他们的功能,现在想将它们放入临时服务器以供 Q&A/approval 下一个版本使用。
我看到的选项如下:
两位开发人员都完成了将他们合并到一个开发分支中的功能。登台服务器已签出开发分支。
这里的问题是假设在Feature2的测试过程中发现有一个bug,或者有一个不可预见的增强可以添加,甚至可能被放弃,或者无限期延迟。现在所有功能都被搁置,发布被推迟,直到 Feature2 成为 fixed/satisfies 新规范,或者我们恢复合并并重新打开该功能,然后发布才会开始。这是一个可以接受的解决方案吗?
另一个选项是存在第三个独立分支,称为暂存。开发人员分别将他们的功能合并到登台分支中,并推送到测试每个功能的登台远程。该功能只有在获得批准后才能完成并合并到开发分支中。
这种方法的好处是开发分支基本上只包含已批准的功能,并且可以随时从中获取发布。缺点是我们需要切换登台服务器以签出开发分支,以便可以在发布阶段测试所有内容。此外,如果功能被放弃或我现在无法想到的其他原因,暂存分支可能会偏离现实,这意味着它需要定期从 live(?) 中重新检查。
我意识到这可能是部署管道和 CI 解决的问题,但我很好奇其他人如何使用 git 分支模型或 Git 流程解决此问题。
由于功能分支的代码需要 tested/approved 由 QA 进行,开发人员可以将功能分支推送到远程和 QA merge/test 功能分支。即使一个特性分支没有通过,也不影响其他特性分支发布新版本。