TFS 发布管理

Posted

技术标签:

【中文标题】TFS 发布管理【英文标题】:TFS Release Management 【发布时间】:2014-09-26 05:30:43 【问题描述】:

我们的项目中有 9-10 个应用程序。到目前为止,还没有定义的 TFS 结构,也没有发布管理。我们需要设置一个。

我们现在陷入了困境,每个版本都需要遵循一些关于流程的问题。

这是我们迄今为止的计划。我们创建一个包含当前生产源代码的主分支。 为了管理发布,我们将创建一个“发布”文件夹,我们将为每个发布创建一个单独的分支。所有的错误修复和开发者签到都将在这个分支上完成。

目前,出于部署目的,我们正在将已开发/已修复错误的代码部署到 QA。在 QA 验证之后,我们将发布的代码从 QA 环境复制到 Staging Servers。阶段验证后,将发布的代码复制到生产环境。

现在,我们无法弄清楚如何/合并我们将发布代码合并到主线。客户的要求是主线代码应该是我们发布并部署到 QA 的代码。 我们之前计划从发布分支进行部署,并在所有验证和生产迁移完成后将发布分支合并到主分支。

但这意味着,如果我们遇到任何合并问题,主线代码可能会出现错误或不可靠,并且在任何热修复/进一步发布的情况下,我们可能会面临重大问题。

请提出适合我要求的策略。

提前致谢。

【问题讨论】:

如果关闭,请发送电子邮件至 info@nakedalm.com 【参考方案1】:

您应该更多地考虑二进制发布模型而不是源发布模型。如果你必须合并代码,那么一切都需要重新测试,这可能会很昂贵。

如果您使用 Git,我会推荐 Git Flow,但由于您希望使用 TFVC,因此您应该按版本查看分支。

为您当前的代码线创建一个分支,例如 R1。然后在那里工作,直到 R1 完成代码。分支到 R2 以继续添加新功能。

现在可以稳定、发布和支持 R1,在您的情况下维护一个连续的分支,一个连续的构建创建二进制文件。您可以在发布管理中创建一个二进制发布管道,然后就可以使用了。

然后,R2 是添加新功能的地方,您可以为新版本创建单独的构建和二进制管道,直到您在那里完成代码。

【讨论】:

以上是关于TFS 发布管理的主要内容,如果未能解决你的问题,请参考以下文章

在发布 TFS 中发布文件

将 TFS 构建与发布管理集成

TFS 发布管理

TFS 发布管理 vNext ReleaseManagementShare

从 TFS 2015 中的发布定义执行 Selenium java 脚本

TFS 发布部署评论