Git flow-从另一个功能分支创建功能分支

Git flow-从另一个功能分支创建功能分支,git,git-flow,Git,Git Flow,我已经使用了一段时间了。我很想了解一个特定的用例 对于我的一个项目,我有一张新网站功能的门票。此票证取决于许多子任务。我想为主记录单创建一个功能分支,然后为每个子任务在父功能分支的基础上创建一个功能分支 假设我有一个票证PROJ-500,我为它创建了一个功能分支 git flow feature start PROJ-500 然后我想通过PROJ-515将票据PROJ-501集成到PROJ-500中,然后再将整个东西集成到develope中。有没有办法让我做类似的事情 git flow fea

我已经使用了一段时间了。我很想了解一个特定的用例

对于我的一个项目,我有一张新网站功能的门票。此票证取决于许多子任务。我想为主记录单创建一个功能分支,然后为每个子任务在父功能分支的基础上创建一个功能分支

假设我有一个票证PROJ-500,我为它创建了一个功能分支

git flow feature start PROJ-500
然后我想通过
PROJ-515
将票据
PROJ-501
集成到
PROJ-500
中,然后再将整个东西集成到
develope
中。有没有办法让我做类似的事情

git flow feature start PROJ-511 -b PROJ-500
然后随着时间的推移,这些子任务完成,当它们的功能完成时,分支合并到
PROJ-500

git flow feature finish PROJ-511
上述命令将
PROJ-511
合并到
PROJ-500

完成所有子任务后,将完成
PROJ-500
,并将其合并到
develope

这样,新的网站功能就可以作为一个单元而不是零碎地集成到开发中

更新(2020年11月5日):如更新的答案所述,gitflow avh取代了原来的git flow,这是可能的

===================

原始答复:

我认为在git流中没有实现这一点的方法,但只使用git是相当简单的

git checkout PROJ-500
git checkout -b PROJ-511
...do your PROJ-511 work...
git checkout PROJ-500
git merge PROJ-511
git branch -d PROJ-511

可以通过创建子要素分支

git flow feature start PROJ-511 feature/PROJ-500
但是您不能使用GitFlow工具将分支合并回主功能分支,因为如果您这样做

git flow feature finish PROJ-511
该功能将合并到
develope
。因此不支持子功能,您需要手动执行

备选方案:但这项要求并不新鲜。除了
develope
之外,还有一个和另一个声明支持将整理功能划分为分支。我还发现了一个具有该特性的实现。您可能想尝试这种修改,看看您是否满意



更新2019-12-13:正如用户Matěj Křížž在其评论中提到的,用户Tony Chemit在我的回答几个月后写了一个答案,指出这是gitflow原始产品的替代品。它支持具有上述语法的现成子功能。几年过去了,现在AVH版本是Git for Windows的正常安装的一部分,我只是在我的本地机器上验证了这一点,并测试了子功能选项。也就是说,对于Windows用户来说,它只是在Git安装后立即工作。

据我所知,gitflow已经被完全抛弃了

gitflow avh取代它并提供此功能(请参见 )

我只是尝试一下,它对我很有效

git flow feature start PROJ-511 feature/PROJ-500
git flow feature finish PROJ-511

PROJ-511已合并到feature/PROJ-500中。

如前所述,我们可以使用任何具有

git flow feature start PROJ-511 feature/PROJ-500
为了完成子功能,我们可以临时更改git流配置,以使用我们的功能分支,而不是
develope

git flow config set develop feature/PROJ-500 && git flow feature finish PROJ-511
这样,git流运行所有命令和健全性检查。最后,要恢复配置,我们可以运行

git flow config set develop develop 

谢谢德里克的回复。是的,我可以遵循这个工作流程。但git flow封装了许多命令和健全性检查,我更愿意将它们用于子特性开发。例如,这里有一个指向git flow特性的链接——这样做不行吗<代码>git流量功能启动项目-511项目-500?您在评论中发布的DerekS答案的链接表明应该这样做。@pymarco:谢谢您接受这个答案。不过我很好奇:你有没有试过其他的选择?如果是,是哪一个,结果如何?它是否按预期工作?也许其他读者可以从你的经历中学到一些东西。:-)对不起,我没有时间再谈这个问题了。总有一天我会试试的。为什么要投否决票?否决票用于写得不好、草率、没有研究成果或知识迹象的答案。无论如何,谢谢。如果您使用gitflow avh版本,请查看@tony chemit answer