我使用GitFlow将功能分支映射到用户故事。实质上,每个功能分支代表一个用户故事。当故事完全实施和测试时,它被认为已完成,并且功能已完成(合并回开发分支)。
我现在的问题是我的功能已被拆分为Epic,目的是要有一个渐进的部署计划。每个故事都应该是一个特色。绝大多数故事的设计使得它们彼此之间没有任何依赖关系,能够单独实施。然而,一个警告是,他们都依赖于一个共同的故事。
目前,常见故事(功能)已经完成,但尚未通过测试/质量保证部门,因此我无法将其合并回开发分支。但我想开始研究史诗中的另一个故事。
什么是"正确"这个过程?我应该从现有功能分支的HEAD创建功能分支吗?它没有遵循典型的GitFlow流程,所以我想知道其他人是如何解决这种情况的。
答案 0 :(得分:4)
是的,您应该从现有功能分支的提示创建功能分支。与大多数流程一样,Git Flow更多的是一套指导方针而非实际规则。
但是,如果你想要一个更清晰的历史,你也可以拥有它。将依赖功能分支合并到develop
后,检查新功能分支并执行:
git rebase develop
在rebase期间,Git将看到来自依赖分支的提交已经合并到develop
,因此在功能分支中不再需要它们。因此,您的功能分支现在只包含特定于该功能的新提交。
如果您已将其推送到服务器,您还必须执行以下操作:
git push --force-with-lease
现在,在合并相关功能后,您的功能分支将直接从develop
开始。