繁体   English   中英

具有多个主分支的Gitflow

[英]Gitflow with multiple master branches

虽然这类似于具有多个并行释放分支的线程Git-flow和master,并且类似于在多个master分支上使用git的最佳方法是什么? ,但并不完全相同...我确实发现这很相似: 具有相同GIT主文件的多个项目 ,但我想讨论我的特定用例...

我工作的公司正在为Git工作流程建立政策和程序。 我们要使用http://nvie.com/posts/a-successful-git-branching-model/https://www.atlassian.com/git/tutorials/comparing中所述的“ Gitflow”模型-workflows / gitflow-workflow,并且在此问题的许多讨论中都经常提及。

但是,我们有一个用例,但有一个需求,我无法找到记录在案的解决方案。 如果您的项目用于生产多个最终产品怎么办? 因此,主分支无法像代表单个产品一样代表“发布点”。 看来师父可能需要其他分支? 那么有多个并行释放分支?

例如,如果项目充当具有不同外观,口味或变体的事物的主干或引擎,但您希望将所有最终最终产品都存储在一个存储库中,该怎么办?

在我的特定情况下,我有一个在Linux服务器上运行的程序,但它也作为本地Windows应用程序分发。 在这些不同的版本中,项目的很大一部分可能包含在一个或另一个版本中,也可能不包含。 例如,如果存储库仅用于服务器,则不需要包含服务器上的库,但必须将它们包含在本地发行版中,否则它们将不存在。 我想在特定的发行点将更新回购到服务器上,但是忽略不属于该版本的文件。

我可以从master分支创建“服务器发行版”和“本地发行版”分支吗?

开发分支(及其功能)将从何而来? 我不希望有多个开发分支,每个分支都来自其自己的发行版,因为代码开发实际上99%适用于这两个分支。 我是否需要将一个dev分支合并为一个,然后再合并为另一个版本?

如果两种产品之间共享99%的代码,则可以轻松共享同一存储库。 只要两个产品处于相同的发布周期,就可以拥有一个release / develop / master分支,例如,同时发布2.0版。

我可以从master分支创建“服务器发行版”和“本地发行版”分支吗?

在gitflow中,您实际上是从develop分支发布的! 但是,如果它们处于不同的发布周期,则不会阻止您为每个产品创建发布分支。 然后,您可以自由地将发行分支合并到自己的开发分支和主分支中。 唯一的问题是,您可能需要在master分支上使用两种不同的标签样式,以便可以看到每种产品在其发布周期中所处的位置。 为了使标签保持相同的格式,您可能有两个主分支(每个产品一个),当相应产品的功能完成时,您会分别合并到其中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM