不要释放所有已经合并到 dev 分支的特性

Do not release all feature already merged into dev branch

我们有 2 个功能 AB 已经合并到 dev 分支,分支 dev 用于测试环境,并且两个功能都经过测试。现在我们只想发布功能A,怎么办?我们的 git 流程有问题吗?

你的 git-flow 目前看起来还不错。它并不意味着用于部分释放 develop

任何合并到 develop 的内容都将被释放。

以下是您可以使用的一些解决方案:

(1) 在您想要发布之前不要合并(或者最好不要开始处理它)一个功能。

(2) 如果您想合并未完成的功能,请添加一个功能开关以轻松打开和关闭任何打开的功能 develop
Heads-up:不是每个人都认为这是好的软件设计——包括我。但为了完整起见,我想提一下。

(3) 这也不是一个好方法,但在技术上是可行的:还原您不想在 release 分支上发布的功能。如果您不想 re-write 提交历史(您不应该这样做),这可能是您现在唯一的选择。

(4) 创建一个新的 release 分支,从提交开始,就在特性 B 被合并到 cherry-pick 特性 A 到那个 [=14= 之前]分支。