同时满足要求:
- 运行并行母版
- 运行功能分支,可能/可能不会发布
- 处理热修复
- 处理漏洞修复
查看A successful Git branching model
只要我们在每次发布后标记 master 分支,我们就可以取消发布分支吗?
我们也可以取消 develop 分支吗?
发布分支可以在新冲刺开始时从 master 分支出来,开发人员可以从中创建他们的功能分支。如果一个 hotfix merge 到 master(当前版本)发生在一个 sprint 的中间,那么这个 hotfix 也可以同时 merge 到当前版本分支作为 feature-branch-hotfix-
feature/develop分支的代码应该部署到DEV环境
特性分支本身根本不应该被部署。
更喜欢我的策略,其中从 release-* 到 master 的 merge 请求通过 webhook 启动 jenkins 管道构建,这将自动 merge release-* 到 master,从 master 构建并标记 merge 提交。
最佳答案
如果您想要更简单(更灵活)的工作流程,请考虑 gitworkflow .
您不会将 dev
merge 到 master
:您只会 merge feature
分支。
merge feature
分支到:
dev
用于集成测试master
准备下一个版本- 另一个
release
分支,如果您同时维护/准备多个版本
我detail that model further here和 illustrate it here
重要的一点:dev
分支(用于将 feature
分支集成在一起)是transient:它会为每个新版本创建/销毁(而不是一个固定的永恒 dev
分支不时 merge 到 master
)。
您可以根据需要重新创建尽可能多的集成分支来一起测试功能。
然后,准备就绪后,您只需将正确的 feature
分支 merge 到 master
(或任何其他 release
分支),删除您的 dev
分支,并为下一个版本重新创建它。
关于git - 简化 git flow 工作流程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56454059/