TFS自动构建策略问题

本文关键字:策略 问题 构建 TFS | 更新日期: 2023-09-27 18:07:11

我是Team Foundation Server的新手,我目前正在为我的项目设置一个自动构建策略。我有一点困惑是如何设置与我们的源代码控制/开发结构相匹配的自动构建。

根据公司政策,在TFS项目下,我们包含'trunk'和'branches'文件夹。"Trunk"表示并包含我们的生产代码。"分支"显然包含正在开发的分支。

我想为分支设置CI(持续集成)构建,并为"trunk"设置"Gated check-in"构建。我的想法是,这将实际上消除"主干"构建在推出到生产环境时的任何问题。然而,我对所有这些都有一些问题:

1。我的策略有意义吗?(是不是太冗余了?它是否会产生不可预见的问题?等)

2。"合并"是否构成将触发CI或门控构建的"签入"?如果开发人员将他们的开发分支合并到'trunk'中,我希望这会触发trunk构建。(也许这里的"门式"构建是不必要的冗余?)

你能给我的任何指导都是非常感激的。提前感谢!

(开发环境:TFS 2010, VS 2010 Ultimate, Windows Server 2008 R2)

TFS自动构建策略问题

  1. 我想是的。我们也在做同样的事情,并取得了很大的成功。封闭的构建对于每天的开发来说可能有点不稳定,因为在构建之后会不断地进行合并,但从分支到分支合并的角度来看,您不会有太多的问题。请记住,在签入期间签入不可合并二进制文件时,如果启用了门控构建,则无法在本地保留更改。

  2. 是的。合并在本地进行,然后检入合并的文件。这将触发您为该分支设置的任何构建。

我发现这些策略使代码库很好地组合在一起。我遇到的问题是,门控构建只是不实用,因为它变得非常难以纠正某些问题。我不得不求助于关闭门控制来"合并"某些更改,然后重新启用它。

任何源代码管理签入(包括合并)都将触发一个源代码管理变更事件,并拥有一个与之相关联的变更集。

我们的正常设置

Project 
Project'trunk
Project'branches
Project'releases

我做了类似的事情,并将构建配置中的工作空间目录设置为本地化的,因为我需要它。在主干上有一个门控签入确保你总是在主干分支中成功地构建代码,所以我不认为它是多余的。

这个链接有很多帮助我建立合并策略的信息