在gitflow中,如果我们将发布分支打开一周,我们仍然可以将功能分支合并到develop中。
我们有一个发布分支暂时打开,因为我们从开发中断,我们将发布分支保持打开一周。但与此同时,我们需要将事情合并起来才能发展。那是对的吗?或者我们应该暂时在另一个分支中进行,或者发布分支不应该打开这么久?有什么想法吗?
答案 0 :(得分:2)
从开发创建发布分支后,所有提交或合并开发的内容基本上都是针对下一个版本。
想象一下,您当前的版本为1.0
(因此master
已在1.0
上)并且您已完成1.1
中develop
的功能实施。然后,您从release
分支develop
,将版本号增加到1.1
。从此时起,develop
的所有更改都适用于版本1.2
。如果您需要修复发布1.1
的内容,请在发布分支上执行此操作。然而,它应该只是很小,理想的抛光变化。
如果您担心这些更改可能会对同时发生在1.2
上的develop
的并行开发产生过多干扰,您也可能会在开发和任何仍在开发的功能分支中引入这些更改。 。根据更改,您可以将release
合并到develop
或cherry-pick
个别提交。您可能需要阅读how to merge a specific commit in Git以及Git Cherry-pick vs Merge Workflow中的差异。
在完成release
的所有工作之前,我个人认为将版本号更改从develop
合并到release
并没有任何问题。我只是确保我的合并评论清楚地告诉我这不是最后的合并,而是一些中间合并。
最后应该记住,git flow只是帮助开发人员组织工作的一种措施。如果最终它不适合团队的内部工作流程,那么每天都不应该严格遵守它。
另请参阅Vincent Driessen's blog post that introduced git flow和a(略有见解)comparison of different branching models by Atlassian。