【发布时间】:2017-12-14 22:03:46
【问题描述】:
我正在使用 BitBucket 和 VSTS 构建标准 CI 管道。 开发团队在功能分支上工作。当他们的工作完成后,他们将代码合并到开发分支中。
我想要一种在将功能分支合并到开发分支之前强制执行测试的方法。理想情况是这样的:
- 开发者创建一个拉取请求。
- 代码审查流程已获批准。
- 开发人员做了一些事情,这会触发一些将功能分支与开发分支合并的过程(功能分支可以合并到开发分支,或者在两个分支合并的情况下创建一个全新的分支,或其他)。李>
- 已合并的分支已构建、部署并对其执行测试。
- 测试通过:分支合并到开发分支中。
- 测试失败:功能分支没有合并到开发分支(如果分支已经合并到开发分支,则合并的提交从开发分支恢复)。
此过程的目标是使开发分支保持“良好”状态。 通常,触发所有这些过程的某些东西是将代码提交(或合并)到开发分支的行为。这个过程的问题是如果测试失败而不会丢失代码,则将代码从开发分支中恢复。 (此时合并的分支可能已被删除)。
【问题讨论】:
-
VSTS 通过拉取请求和分支策略对 Git 存储库提供原生支持,从而在合并之前强制执行成功的 CI 构建。