这几天在网上查询了一些资料,了解到比较常见的版本控制分支策略有三种:不稳定主干策略、稳定主干策略、敏捷发布策略。
下面是对这几种策略的摘录:
不稳定主干策略
使用用主干作为新功能开发主线,分支用作发布。
被广泛的应用于开源项目。
比较适合诸如传统软件产品的开发模式,比如微软的office等。
bug修改需要在各个分支中合并。
新代码在主干上开发,因此如果主干不能达到稳定的标准,就不可以进行发布。
这种策略的好处是没有分支合并的工作量,因此比较简单。
稳定主干策略
使用主干作为稳定版的发布。
bug的修改和新功能的增加,全部在分支上进行。
不同的修改或新功能开发以分支隔离。
分支上的开发和测试完毕以后才合并到主干。
主干上的每一次发布都做一个标签而不是分支。
每次发布的内容调整起来比较容易。
缺点是分支合并所增加的成本。
敏捷发布策略
敏捷开发模式的项目中广泛采用,敏捷开发的项目具有固定的发布周期。
为每个task建立分支。
为每个发布建立分支,每个周期内的task分支需要合并到发布分支发布。
在完成发布后,发布分支的功能合并到主干和尚在进行的任务分支中。
一种稳定主干策略的变体。
团队成员要求较高。