GIT流程和并行软件版本的支持

时间:2016-10-28 09:42:51

标签: git svn release-management git-flow

我的公司正在转向GIT(来自SVN)。

我一直在读这个关于GIT流程的信息:

http://nvie.com/posts/a-successful-git-branching-model/

我不明白,我怎么能适应我们当前的发布模式。

当前版本架构

enter image description here

假设我们公司的公司部门发布软件X.

我们的团队为软件开发软件包/模块。

有时,在软件的不同版本上,我们不需要更改任何内容,只需轻微修复错误=>请参阅包2。

有时,公司人员在某些领域发布了许多设计变更,我们必须创建特定版本的调整(代码,文档或配置)=>见包1或3。

目前在SVN中如何处理

使用主干/分支布局。如果您获得特定于版本的内容,假设对于包1中的代码,您将找到具有版本特定更改的V12,V14,V15,V16和V16子目录。我们的发布工具(ANT / Jenkins)处理这种复杂性。

我的问题:

在GIT流程中,正在删除发布分支,合并回主服务器并在那里进行标记。

如何处理旧版本中的错误修复(在我的示例客户端4中)?

您如何处理想要获取旧版本软件包(客户端1升级计划)的客户?

(在现实生活中,我们有100多个包和20多个客户)

我读过这些但是没有找到我的问题的答案:

Git-flow and master with multiple parallel release-branches

Git flow: Best practice for dealing with minor releases

Multiple development branches with git-flow

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

根据您所描述的内容,这将是我所称的支持分支。在我工作的一个名为GitVersion的实用程序中,我们在这里描述:

https://gitversion.readthedocs.io/en/latest/git-branching-strategies/gitflow-examples/#support-branches

  

GitFlow并未真正涵盖支持分支,但如果您需要同时维护多个主要版本,则必不可少。您也可以使用支持分支来支持次要版本。如果您只是支持专业,那么请指定您的分支机构/ .x(即support / 1.x),以支持未成年人使用support / .. x或support / .. 0。 (即支持/1.3.x或支持/1.3.0)