我们遵循scrum方法,其中sprint大小为4周(我知道!),并且完成积压项目的标准是它应该通过QA。客户希望更多地控制何时将代码部署到UAT然后再生产到生产环境。所以从理论上讲,我们可以在Sprint 3中处理sprint 3积压项目,客户决定通过(svn)将代码部署到UAT。
这是一个问题,因为我们都在干线上工作。那么我们如何确保客户端只部署在(n-1)个sprint中通过QA的东西。
希望这是有道理的!
答案 0 :(得分:2)
在每个sprint结束时创建一个/tag
并进行部署。根据需要继续/trunk
。
冲刺结束时的分支;通过QA时标记。
答案 1 :(得分:2)
通常这是通过标记和部署标记来完成的。
答案 2 :(得分:2)
正如您所描述的那样,我们正在关注Scrum。最初我们经常苦苦挣扎,但找到了可靠的解决方案。
1- Trunk应该始终是一个实时实体,开发人员可以随时提交更改。
2 - 在每个sprint完成后从trunk创建分支。
3 - 尝试为每个QA部署创建TAG。
4 - 尝试将TAG / Branch上的缺陷修复程序合并到主干中。
现在您已将问题分开,这些问题可以轻松管理。
希望它有所帮助。
答案 3 :(得分:1)
一种解决方案是拥有一个发布分支。只有已注销的代码才会合并到发布分支中。然后,客户端可以自由地从该分支部署构建。
您还需要确保所有相关代码同时合并,否则会变得非常混乱。