为开发和生产设置git

时间:2015-05-26 07:37:05

标签: git version-control architecture

我正在使用下面提到的生命周期来推动生产中的任何更改或功能。

Localhost(开发人员在localhost上工作) - >将他们的更改迁移到暂存(对于QA - 可以有超过1个开发人员的更改) - >生产

以下是我正在使用的工作流程

-master(runs on production)
 -staging (runs on staging server - parent master)
  -feature (parent staging)

开发人员处理功能分支并将其合并回暂存。

我面临的问题是,在暂存中可以有超过1个开发人员代码,如果我想使用1个开发人员的代码,我不能将staging直接合并到master中,也不能将功能合并到master中它是升级的孩子,它可以有暂存的代码,但尚未被推送。

需要帮助来定义正确的git工作流程。任何帮助,将不胜感激。

1 个答案:

答案 0 :(得分:1)

我之前使用的工作流程类似于您在问题中描述的情况。以下是该工作流程的简要概述:

  • 一个或多个开发人员可以使用任意数量的功能分支。每个功能分支将在每个冲刺开始时从master创建。

  • 在sprint结束时,当所有功能完成后,每个功能分支将合并到staging。最初也将从master创建暂存。您可以为登台分支指定一个唯一的名称,以便轻松引用它,例如2015年5月分行的staging_05_15

  • 每个sprint的最后一周将用于测试staging分支,以确保它是稳定的。如果staging分支中的所有功能都正常且测试通过,则staging将发布给客户。

  • 最后,staging合并回master,循环再次为下一个冲刺重复。