当我使用GitFlow时,为什么发布分支需要合并到开发分支中?

当我使用GitFlow时,为什么发布分支需要合并到开发分支中?,git,git-flow,Git,Git Flow,我正在学习Gitflow工作流。下面是一个关于Gitflow工作流的示例图 我认为A、B、C和D的内容是一样的,对吗 我认为A合并到C,然后C合并到D是可以的,但是为什么需要C合并到B呢?你知道A和B是一样的 图像 您关于A、B、C和D相同的断言是不正确的(至少在本图的上下文中是这样) 在A和C之间,您将看到有一些提交。这是意料之中的。在“测试”发布分支时,可能发现了一些需要在发布之前纠正的bug。或者可能需要一些维护工作,例如,更新源代码中的版本号,或者类似的工作 无论采用哪种方式,都会在发布

我正在学习Gitflow工作流。下面是一个关于Gitflow工作流的示例图

我认为A、B、C和D的内容是一样的,对吗

我认为A合并到C,然后C合并到D是可以的,但是为什么需要C合并到B呢?你知道A和B是一样的

图像


您关于A、B、C和D相同的断言是不正确的(至少在本图的上下文中是这样)

在A和C之间,您将看到有一些提交。这是意料之中的。在“测试”发布分支时,可能发现了一些需要在发布之前纠正的bug。或者可能需要一些维护工作,例如,更新源代码中的版本号,或者类似的工作

无论采用哪种方式,都会在发布分支上进行更改,因此,一旦完成,这些更改必须带回开发分支,以便它们可以进入下一个发布

现在,已经说过了所有这些,有时候在发布分支上没有额外的更改,因此,没有必要合并回开发分支。在这些情况下,如果您试图将发布分支合并回开发分支,git实际上会告诉您没有什么可做的,因此不会发生合并

这在关于使用GitFlow的原始文章中有记录:

发布分支支持准备新的生产发布。它们允许在最后一分钟点i和穿过t。此外,它们允许进行小错误修复,并为发布准备元数据(版本号、构建日期等)。通过在发布分支上完成所有这些工作,开发分支将被清除,以接收下一个大型发布的特性


谢谢在Gitflow工作流中,我认为非主体可以在发布分支中直接修改代码。如果有人在发布分支中发现bug,他将要求一个人在开发分支中修改代码并重新提交,对吗?这不是我的理解。请看一看关于GitFlow的原始文章,具体如下:。根据GitFlow工作流,您对发布分支所做的任何操作都应该通过cherry picking进行后端口开发。所以我不明白为什么最后还有什么东西要合并:|