构建自动化 - 命名最佳实践

Posted

技术标签:

【中文标题】构建自动化 - 命名最佳实践【英文标题】:Build Automation - Naming Best Practices 【发布时间】:2018-07-31 00:14:49 【问题描述】:

相对于构建定义名称,我在 Team Foundation Server 中有这个构建设置

系列 > 迭代(分支)> 应用程序

我正在尝试为构建定义建立一个统一的命名法,并且由于目前我们在 TFS vNext 中有关于文件夹的概念,我一直在寻找这样的东西:

系列文件夹 > 迭代文件夹 > Family.Iteration.Application

在哪里 家庭类似于 Office365 迭代类似于 Alfa1、2017.1 等 应用程序类似于单词

在这个例子中看起来像 Office365 > Alfa1 > Office365.Alfa1.Word

你们怎么看这个?命名构建的最佳实践是什么?你会怎么做?

谢谢

【问题讨论】:

根据我的意见,您想让您的构建定义名称 = 类似 Office365.Alfa1.Word 。您的单个团队项目是否包含多个产品?构建定义目前是团队项目级别,为什么必须让它如此复杂?而对于这种构建定义名称,它会如何表示触发器呢?我不知道它是 CI 构建 / 门控构建 / 计划构建? 您好,Patrick,在我们公司,一切都是定制的小构建系统,并与旧的 xaml 构建混合。我试图将所有内容迁移到 TFS 2017 中的 vNext 构建系统,但我无法找到有关此的指导方针。我对此有点陌生,我可以了解有关如何构建以及如何进行构建的所有信息,但我找不到有关命名的指导方针,以及它与 CI 和触发器的关系。是的,团队项目中有不同的产品,不同的分支(不是 git)。我们同时使用不同的分支来构建。 我首先考虑使用产品系列和分相器的文件夹,例如 Office365 > Alfa1 > Word,但是当我关联链接工件时,Release Manager 有一个奇怪的错误,我看不到关系中的文件夹,并出现重复。所以结论是构建定义名称以避免重复 【参考方案1】:

您的命名约定对我来说似乎有点奇怪,尽管我怀疑这是您自己的错。您的应用程序应该看起来更像一个版本号。 IE 2.30.1.13 - 或“Major.Minor.Revision.Build”。这使得排序更容易。主要和次要的变化由管理层自行决定。当存在错误修复时,版本会发生变化,并且构建只会随着您运行的每个构建而增加。我会将您的迭代文件夹保留为“Major.Minor”,下一个文件夹将是“Major.Minor.Revision.Build”,尽管这取决于您当前使用的命名约定。

【讨论】:

您好 Candace,我们在谈论不同的事情 我们通常不会在构建命名中使用版本控制,您在自己的构建中使用吗?我在想你说的话。也许你在谈论存储、部署文件夹? \\server\Family\Major.Minor\Major.Minor.Revision.Build?我问的是构建定义命名。

以上是关于构建自动化 - 命名最佳实践的主要内容,如果未能解决你的问题,请参考以下文章

最佳实践 - Git + 构建自动化 - 将配置分开

.o文件或构建版本控制的最佳实践是什么?

CI开发的最佳实践是什么?

命名视图的最佳实践 [关闭]

配置 SORM 的最佳实践

Helm(三)—最佳实践