简短的答案:是的,计划在即将发布的版本中进行错误修复的分支应该位于功能分支中。如何命名功能分支或这些分支以进行错误修复取决于您和您团队的标准,但是如果您遵循Gitflow,则应将它们等同对待。
Bart van Ingen Schenau的评论提出了一个很好的观点。
Gitflow有五个分支类型:master
,develop
,修补程序分支(前缀hotfix-
),发布分支(前缀release-
和功能分支的。master
和develop
分支长期分支和你没有直接提交到他们。release-
分支是由画一条线特定版本,然后在下一个版本的标识与版本之间提供错误修复。这些hotfix-
分支专门用于重要的非周期版本投入生产;这些feature-
分支用于为某些将来的版本开发单个功能。
从那里永久居民的使用和除了个别开发商承诺一个特性分支的环境中来了,没有什么应致力于直接进入master
,develop
或发布分支。这样可以确保对每个更改进行代码审查,并确保在更改进行之前确保适当的测试覆盖率并在CI环境中通过测试。我反对直接对这些分支之一进行任何提交,尽管看起来Gitflow本身并没有这样做。将预发布的错误修复或更改直接提交到发行分支,然后将其引入开发,然后引入功能分支,将不会有任何问题。
在您的特定情况下,release-
分支机构不合适。该软件已经发布并且在中master
。一旦将某个发行版合并到master并在其中进行标记,该特定发行版的release分支便已失效,并且不再需要存在。如果您积极清理分支机构(我认为每个人都应该这样做),那么这甚至不是一个选择。
如果您的修补程序不是很关键,那么修补程序分支似乎也不适合。修补程序分支的目的是让某人非常快速地对生产进行关键更改,而不会干扰正在进行的开发。使用这些应该是例外,而不是开发团队的规范。通常,关键修补程序应该是例外情况。
剩下的唯一一件事就是功能分支。请注意,在有关功能分支的问题中链接到的页面部分甚至说功能分支是“有时称为主题分支”。如果您的更改以任何即将发布的版本为目标,并且不符合修补程序的条件,则更改应位于这些分支之一中。