我正在学习Gitflow工作流程。以下是有关Gitflow工作流的示例图。
我认为A,B,C和D的内容相同,对吗?
我认为A合并到C然后C合并到D可以,但是为什么需要C合并到B?你知道A和B一样!
图片
答案 0 :(得分:3)
您关于A,B,C和D相同的主张是不正确的(至少在此图中如此)。
在A和C之间,您将看到一些提交。这是预期的。在“测试”发行分支时,可能是发现了一些需要在发布之前纠正的错误。也可能是需要进行一些维护工作,例如,更新源代码中的版本号或类似内容。
无论哪种方式,都在发布分支上进行更改,因此,一旦完成,则必须将这些更改带回到develop分支中,以便它们可以前进到下一个版本。
现在,说了这么多,有时可能会在release分支上没有进行任何其他更改,因此,不需要合并回developer分支。在这种情况下,如果您尝试将release分支合并回developer分支,则git实际上会告诉您无事可做,因此不会发生合并。
这是有关在此处使用GitFlow的原始文章中记录的内容:
https://nvie.com/posts/a-successful-git-branching-model/#release-branches
发布分支支持新产品版本的准备。他们考虑了i的最后一刻和t的交叉。此外,它们还允许进行较小的错误修复并为发布准备元数据(版本号,构建日期等)。通过在发行分支上完成所有这些工作,开发分支将被清除,以接收下一个大型发行版的功能。