什么是一个很好的工作流程,以便采摘樱桃'分支部署?

时间:2016-02-12 17:56:03

标签: svn deployment

我们有一种情况是我们使用SVN,开发人员拥有我们想要实现的功能的分支,以及需要修复的缺陷,有时还有实验分支或峰值。

我们还有一个'分期'表示登台服务器当前状态的分支。

在部署到登台服务器的过程中,我们必须确定什么是准备好转移到什么不是。目前这是通过询问每个开发人员并相信他们会记住它来完成的。什么功能或错误随时可以被推高,有时几周之前。

我确定有更好的方法可以做到这一点,但我不知道该走哪条路:

  1. 当开发人员完成某个项目并准备好进行升级时,请执行 它在/ tags / readyforstaging /?之类的标签文件夹中?然后在每次部署后将内容移动到/ tags / archive /? (但这会破坏修订历史吗?)
  2. 与#1相同,但创建一个新的根文件夹以避免与标签的静态性质混淆,例如/ ready / staging /和/ ready / archive /?
  3. 我不确定我们是否可以让开发人员直接合并到分段,因为我们可能不希望他们的功能出于任何原因而在下一次部署中。

    有没有人知道这样做的好方法,所以我们有一份明确的清单,列出了所有可以使用的内容,但不会对修订历史/图表造成严重破坏?

1 个答案:

答案 0 :(得分:0)

无论如何不是"好的方式",但至少它在真实的项目中起作用

如果严格"每个任务分支"你可以使用的政策"不稳定的中继线"游戏:

  • Trunk从任务分支中只有仅合并(作者必须将完成自己的分支合并到主干,每次合并后必须执行集成测试,修复应用的分支并重新合并执行< em>如果需要)
  • 对于干净,易于阅读的中继历史,必须不将任何反向合并添加到主干中(当集成测试失败时,在修复之前),&#34; Ready4Staging&#34;可以是repo中的其他特殊URL,并且必须是用于合并到Staging分支的单个权威来源