互联网敏捷开发配置管理策略思考
作者:网络转载 发布时间:[ 2013/2/16 11:44:08 ] 推荐标签:
3)敏捷发布策略
此种模式在采用敏捷开发模式(例如Scrum)的项目中广泛采用,这些项目有固定的迭代周期(例如Scrum中每个Sprint的两周时间),新的功能开发都在Task branch(Feature branch)上进行,在接近迭代周期的发布阶段时候,新建Release branch来完成本迭代周期的发布,各Task branch(Feature branch)的功能merge到Release Branch中。在完成发布后,Release branch的功能merge到Trunk和尚在进行的Task branch中。
采用敏捷发布策略要求主干的版本:
● 任何时候都可以发布 :在任何时候,产品所有者都可以基于主干的新版本,发布新版本的产品
● 希望尽早发布
此种模式较适合敏捷开发软件的要求,但对程序员及SCM要求较高。
关于敏捷发布策略可以参考:多个敏捷团队之间的版本控制
2、配置管理策略
根据目前公司的实际情况,建议采用稳定主
干策略为主。淘宝也采用了类似的版本管理策略。
具体操作策略如下(尚需要细化):
1)trunk保持稳定,保证可以随时发布。trunk只有SCM人员才具有写权限,开发人员等只有读权限。
2)为降低SCM分支管理的压力,branch的权限可以授予给指定的几个组长
3)在每一个项目开始前,采用Branch per feature(Branch per Task)的分支管理模式(Common Branching Patterns ),由各组长或SCM人员按照branch管理规范建立对应项目的开发分支development branch,例如airline_product1_feature_leader_date、airline_product2_bug_leader_date。
项目定义:新功能开发、bug修复、需求变更等
4)在每周的上线发布后,在主干建立基线release版本(通过svn tag),以当前的主干作为基线,建立下一发布周期的test branch
5)开发人员在所在项目的development branch完成开发及集成测试后提交上线单,由SCM人员根据项目上线单的分支名称merge分支代码到本发布周期的test branch,进行测试。如果在测试过程中有新的上线单且有可能与其他上线单存在冲突,则在merge到test branch的过程中,SCM人员可以很容易及时排查问题。
只要对上线单命名按照规范进行定义(例如与分支名称相同),此部分工作可以由脚本来自动化,存在冲突再人工干预。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11