[英]Gitflow: Merging release bugfixes back to develop from master
我的问题是围绕 gitflow 过程中的一个非常具体的点(如此处所述)。
我已经将release/1.2
错误修正合并到master
,并进行了适当的标记。
除了历史看起来如何,从release/1.2
回合并与从master
回合并到develop
之间有什么区别。
我已经尝试了两种方法,在我简单、人为的示例中,正如我所料,我发现develop
没有区别。
这有危险吗? 我以后会遇到麻烦的问题吗? 我错过了一些明显的东西吗? 我怀疑答案可能与已进入master
其他功能有关,但目前应该不在develop
中。
合并发布以开发:
合并主开发:
如果您将master
合并回您的 develop,您将在您的 develop 分支中将所有merge branch release/xy into master
合并merge branch release/xy into master
合并提交中,而在合并release/xy
分支本身时,您只会获得真正的更改。
当然,这或多或少是一个表面问题。 但是合并方向通常只是从develop
到master
,而不是相反。
除了上述合并提交使您的develop
分支混乱之外,没有真正的危险。 如果您坚持流程,那么master
中永远不应该有不在develop
,因为热修复和发布分支应该始终合并到您的develop
和master
。
我怀疑答案可能与已进入
master
其他功能有关,但目前应该不在develop
中。
无论如何, master
提交都会进入下一个修补程序合并的develop
。 如果有真正的代码更改,可能会出现意外结果并扭曲主机修复内容。
合并稳定分支( master
在gitflow)进入开发分支( develop
中gitflow)是已知的各种git的工作流的方式。 Bbitbucket Server(Atlassian 出售的商业解决方案)具有自动分支合并的功能。 由于存在一些错误修复,Git 项目本身总是将分支maint
合并到master
中。
所以我真的不明白 gitflow 的作者选择另一种方式的原因。 可能没有真正的理由,这只是一个偶然的决定。
这有危险吗? 我以后会遇到麻烦的问题吗? 我错过了一些明显的东西吗?
没有危险; 没有问题; 你不会错过任何东西。 将master
合并回develop
是(恕我直言)稍微好一点的方法,并且没有缺点。 无论您选择哪种方式,您最终都会在develop
获得相同的合并提交总数。 区别仅在于这些合并提交何时结束。 如果合并release
回来第一你没有得到全部的release
,以master
,当你做了修补程序合并提交,直到后来,所有在一杆。 如果您重新master
develop
您会立即看到最近的合并提交。 但是将master
合并回develop
有一个更大的优势:
在任何时候,确保master
中的所有更改在存在时也在develop
或release
很重要。 (唯一的一次,他们应该永远是不同步的是完成时release
或hotfix
的分支。)也许,以确认最简单的方法master
的同步增长是确保尖端(上提交)在master
总是在develop
,或在它存在时release
。 您可以轻松编写脚本以定期运行,并在不正确时通知您。 如果您不能期望master
的提示提交永远在release
那么该脚本会更加复杂。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.