为什么需要在GitFlow中开发Branch

时间:2017-01-05 09:54:41

标签: git

我们知道这样的gitflow http://98ki.com/content/images/2016/07/gitflow.gif

我不知道为什么需要开发分支,没有开发分支会导致什么问题?为什么merage功能分支不直接发布分支?

2 个答案:

答案 0 :(得分:2)

每次开发新功能时都无法发布,当开发分支处于“可释放”状态时,您可以发布。即最终用户可以准确地使用该版本。因此,主分支反映了最终用户可以使用的版本和热修复。换句话说,主头总是一个可以使用的版本,没有开发分支就无法获得。

Vincent Driessen写道:

  

我们认为origin / master是源代码的主要分支   HEAD总是反映生产就绪状态。

     

我们认为origin / develop是源代码的主要分支   HEAD总是反映出最新交付发展的状态   下一版本的更改。有人会称之为“整合   科”。这是建立任何自动夜间构建的地方。

您可以获得所有原始帖子here

答案 1 :(得分:1)

实际上,我不会说给定的答案正确地解释了为什么都需要developer分支和master分支才能实现可释放状态。在每个发行版上创建的版本标签也反映了可释放状态,在Git中,如果需要,您始终可以随后根据这些标签创建一个新分支。

实际上,有许多博客文章批评Git Flow模型并提出了一种更方便的分支模型,该模型仅使用一个主分支,即i。 e。大师”。这里是参考:

https://reallifeprogramming.com/git-process-that-works-say-no-to-gitflow-50bf2038ccf7 https://www.endoflineblog.com/gitflow-considered-harmful

因此,此问题的实际答案应该是:如果按照链接文章中的描述调整工作流程,则不一定需要developer分支。不过,您不希望将功能合并到发行分支中,而是合并到master分支中,因为您希望它们也可以在将来的版本中使用。