针对Web应用程序的分支策略的想法?

时间:2011-11-30 19:32:48

标签: version-control

我对您对我们的网络应用程序的分支策略的看法感兴趣。特别是,我想知道我是否满足了不同执行环境的业务需求。

以下是这种情况:

  • 我们的软件是一个Web应用程序
  • 我们的发布节奏预计定期(例如,季度)发布
  • 我们的客户通常只需要使用最新发布的软件版本
  • 有些客户需要使用预发布(" UAT")版本来评估新功能

考虑到这一点,我提出了一个4分支系统:​​

  • Dev - 用于持续的最新发展
  • 质量保证 - 用于内部质量保证需求
  • UAT - 用于预发布测试
  • 生产 - 为客户着想

合并将按以下方式进行:

  • 将通过合并FROM Trunk
  • 对QA分支进行更改
  • UAT分支的更改将通过合并FROM UAT
  • 进行
  • 生产分支的更改将通过合并FROM Production
  • 进行

部署将按以下方式进行:

  • Dev分支的构建将部署到Dev环境
  • QA分支的构建将部署到QA环境
  • UAT分支的构建将部署到UAT环境
  • 生产分支的构建将部署到生产环境

那么,您怎么看?我模糊地走上正轨吗?

2 个答案:

答案 0 :(得分:2)

我们基本上使用该策略。每个环境的分支。

有时我们为任何我们最终会死路一条的重大问题制作服务包分支。

有关codeplex的TFS分支策略指南。

http://tfsbranchingguideiii.codeplex.com/

祝你好运

答案 1 :(得分:1)

你的方法很好。 但根据我过去的经验,我唯一的建议是使存储库版本(1.1.1_C0,1.1.0_B0或1.0.0_A0)依赖而不是环境(Dev,UAT,PROD) 依赖于分支机构。这确实很好,或者我们。 我们根据代码所处的开发阶段标记每个版本。