在Git中分支和合并最佳实践

高井

我们有一个由4人组成的开发团队,最近已移至Git。我们想学习有关分支和合并工作流的最佳实践。

我们正在使用轻量级的Git Flow。我们有一个dev,staging和master分支,它们之间都是线性的。

  • 阶段是从母版分支的
  • 开发是从阶段分支出来的

最重要的是,我们使用功能和修补程序分支来开发新功能并修复错误。

我有以下问题:

  1. 我们应该从dev还是master分支功能分支?
  2. 准备好功能分支后,我们应该将功能分支合并到dev中,然后将dev合并到暂存中,还是将功能分支合并到暂存中,然后将功能分支合并到master中?

我认为我们应该从master分支并合并功能分支,因为在dev中可能有些东西我们可能不想合并到staging和master。

你有什么意见?最佳做法是什么?

高井

我们选择了一个名为Git Flow的工作,但没有从dev分支功能,而是从当前版本分支它们。这使我们能够以不同的速度处理单独的问题。如果他们在质量检查中成功,则进入发布。

关于分支机构和部署:

  • 开发分支自动部署到测试服务器。
  • 当前版本分支将自动部署到登台服务器。
  • 分支手动部署到释放主Live服务器。

工作流程如下:

  1. 在每个发行/冲刺的开始处(例如release / 2015-may)master创建一个发行分支
  2. 发行版/ 2015年5月创建一个dev分支
  3. 使用新功能时,请从发行版分支并命名为feature / ISSUE_NUMBER
  4. 使用您的功能。
  5. 准备进行测试时,将其合并到开发人员中。
  6. 如果接受,则将其合并到当前发行版分支中。
  7. 如果不接受,请转到步骤4。
  8. 发布准备好后,将其合并到主版本中

在发布该版本以使其正常运行并发现了严重的错误之后,我们从master分支出一个hotfix分支(例如hotfix / ISSUE_NUMBER),将其合并回master并再次部署。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章