一旦develop
分支已经具备发布所需的足够功能,或者预定的发布日期即将到来,您就要从develop
分支中派生出一个发行分支。创建此分支开始下一个发布周期,因此在此点之后不能添加新功能。只有修复错误、文档生成和其他发布相关任务应该放在这个分支中(包括测试)。一旦准备好发布,发行版将合并到主分支并附带版本号标记。此外,它应该被合并回develop
分支,可能因为发布启动以来它已经有所进展。
使用专用分支来准备版本发布可以让一个团队在另一个团队继续开发下一个版本的功能时对当前版本进行完善。它还创建了定义良好的开发阶段(例如,“本周我们正在为4.0版本做准备”,并且实际上可以在存储库的结构中看到它)。
更多关于分支的信息请查看此处
如原V.Driessen的帖子中所解释:
Master 是一个永久分支,始终反映出可供生产使用的状态。因此,它适用于用户可以在市场上下载的产品。
Release 是一个临时支持分支,用于支持新产品发布的准备工作。这主要包括 bug 修复、文档等,正如 minas 所指出的那样。
master
上永远不应该有一个提交不在最新的发布分支上。或者,您可以直接向master
添加提交,但在这样做时,请确保它们始终被挑选到下一个发布分支上。将提交添加到master
而不将其添加到下一个发布分支是没有意义的。 - Alex D