0

我们最近在我们的一个更大的项目中采用了功能分支的概念,以分离产品不同方面的工作,这些工作可以彼此独立完成。

对于每个所谓的功能,我们正在创建以下内容:

  • 'main' 的一个分支,恰当地以功能应该是什么命名
  • 项目门户中的新团队,包含将在该功能上工作的人员
  • 用于根据分支上的源验证签入的构建定义

我想在这里讨论的主要观点是关于构建定义。目前,它们中的每一个都设置为门控签到。

那么问题是:将工作项与构建相关联的最佳实践是什么?

在我们的例子中,这些功能分支应该是一次性的:我们希望能够在功能完成后删除这些构建/分支/团队,但仍然能够在整个产品生命周期中跟踪它们。

如果我将工作项与这些临时构建相关联,我将在功能实现结束后失去跟踪功能。同时,我刚刚发现门控签入总是关联工作项,而不管构建定义中配置了什么

禁用与功能分支的工作项集成(在这种情况下也将它们从门控集成转换为持续集成)并在主构建中启用它,以便可以在主产品线中跟踪这些功能是否可行?或者,也许这应该只为 Release 构建定义启用,以便我们可以找出某个版本中集成了什么?对于那些遵循 sprint/feature 概念的人,你如何处理这种情况?你也有每个分支的构建吗?

更新:

我刚刚在这个问题中发现了类似的东西(但不完全像我想要的那样)。那里的答案使我找到了一个插件,该插件会自动关联合并签入上的工作项。这本身应该提供很好的可追溯性,所以我想我会试一试。

仍然想听听您对这种情况下的构建有什么想法。

4

1 回答 1

2

您正在接近这个错误的 IMO。您不应该担心将构建和 WI 关联起来,而应该将变更集和 WI 关联起来。当您的开发人员签入功能分支中的更改时,您应该确保他们将它们链接到相关的 WI。您甚至可以通过签到政策强制执行此操作。

现在,如果您想在将来检查该功能以查看与其相关的所有更改,您可以通过检查功能 WI 并查看所有链接的变更集。即使您删除了分支,所有变更集仍然可用。

于 2013-10-08T20:08:40.240 回答