Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git流:创建、测试和部署“特性”分支_Git_Version Control_Staging_Git Flow_Feature Branch - Fatal编程技术网

Git流:创建、测试和部署“特性”分支

Git流:创建、测试和部署“特性”分支,git,version-control,staging,git-flow,feature-branch,Git,Version Control,Staging,Git Flow,Feature Branch,我在我的公司使用git flow已经有一段时间了,并且多次遇到了让我感到困惑的特定情况。我正试图找出一个最佳实践,通过git flow将新功能集成到现有的已发布站点,我需要测试这些功能,然后将它们分为不同的组发布 我已经建立了一个暂存和生产站点。我从我的开发分支部署到临时站点,并在我的开发分支看起来不错并且我想将我的更改从主站点部署到生产站点时运行git流发布。只要我可以一次发布所有更改,这就可以正常工作。我最近收到了很多客户的请求,要求我成批发布变更单,这意味着我将开发4个功能,他们希望其中2

我在我的公司使用git flow已经有一段时间了,并且多次遇到了让我感到困惑的特定情况。我正试图找出一个最佳实践,通过git flow将新功能集成到现有的已发布站点,我需要测试这些功能,然后将它们分为不同的组发布

我已经建立了一个暂存和生产站点。我从我的开发分支部署到临时站点,并在我的开发分支看起来不错并且我想将我的更改从主站点部署到生产站点时运行git流发布。只要我可以一次发布所有更改,这就可以正常工作。我最近收到了很多客户的请求,要求我成批发布变更单,这意味着我将开发4个功能,他们希望其中2个功能在1周内发布,另外2个在2周内发布。我认为仅仅使用git flow特性分支并完成需要一起发布的分支就可以解决我的问题,但这给我留下了更多的问题

当我为每个新特性创建一个特性分支时,我发现很多次我需要使用一些css或js,这些css或js是我提交给另一个特性分支的,因为它也属于那个分支。我也有一种感觉,当我将这些分支返回到develope中时,我将不得不处理许多合并冲突,因为它们的提交共享许多相同的文件。客户机还希望看到我正在进行的所有更改的活动版本,当我将它们孤立到不同的功能分支中时,我不确定如何将它们显示在一起,除非我将它们合并或重新设置为开发分支并推送到暂存站点。这会毁了我分批出版的机会。我考虑过可能会创建另一个分支来测试我的功能分支,并在这个分支上重新设置其基础,但我不确定这是否能解决我的问题,因为我的功能分支在处理它们时仍然是孤立的


我似乎找不到任何工作流能够满足这些要求,因此我非常感谢任何帮助。

我最近做了一些研究,旨在解决相同的问题,并确定了每个功能的分支策略。该名称暗示了该战略的大部分内容,但以下是一些详细描述该战略的优秀文章:


希望这对您有所帮助

您可以随时使用git checkout—从另一个分支获取一个或一些文件到您当前的分支。感谢您的回复。虽然这有帮助,但我希望我的工作流程没有达到目标,并且有一个不同的工作流程可以更好地适应我的情况。谢谢@rjhilgefort。我将在一个项目上尝试一下,看看效果如何。