在使用git-flow时,是否有可能/希望拥有'master','test'和'develop'分支?

时间:2015-05-05 13:39:46

标签: git git-flow git-workflow

我目前正在开展一个项目,我们正在迁移到Git。我们正在试图找出要使用的工作流程。我们非常热衷于git-flow,但有一个问题。

据我了解git-flow,开发人员在feature之后创建develop个分支,一旦完成特定的feature分支,代码就会合并到develop 。当我们要发布直播时,develop会合并到master。在我们的情况下,develop将是当前部署到开发环境的内容,而master将是当前直播。这一切都很好。

事情

问题是我们需要在 Live 之前部署到另一个环境,即。的测试即可。我们希望有一个test分支,它始终代表当前部署到测试的内容。

我们如何设想这项工作:

  1. 开发人员在feature分支机构中工作,这些分支机构已合并到develop,并已部署到 Dev
  2. 当我们准备推广到测试时,develop会合并到test并转到测试
  3. 一旦所有人都在测试中签名,我们会将test合并到master并将直播
  4. 我的问题

    1. git-flow是否可以,如果是这样,怎么办?
    2. 我们应该这样做吗?
    3. 如何实现这一目标?

1 个答案:

答案 0 :(得分:1)

git-flow具有release分支的概念,您可以将其用于此目的。

事实是,在git-flow中,develop并非简单合并到master。您首先创建一个release分支,在其中准备实时版本,测试它,并在将其合并到master之前进行最后一分钟的错误修复,即即时发布。

release关闭时,它也会合并回develop,因此您将在测试回主开发分支时完成所有修复。

  

发布分支机构支持准备新的生产版本。他们允许最后一刻点缀我和交叉t。此外,它们允许修复小错误并为发布准备元数据(版本号,构建日期等)。

     

- A successful Git branching model » nvie.com