【问题标题】:Unable to use TFS Build Server with shelvesets无法将 TFS 构建服务器与搁置集一起使用
【发布时间】:2013-10-31 14:03:50
【问题描述】:

我在将构建排队到具有指定搁置集的 TFS 构建服务器时遇到了问题。我正在运行 TFS 2012。我有一个包含许多项目的视觉工作室解决方案。我将打开解决方案,对一些项目中的几个 .h 头文件进行更改,然后为该更改集制作一个搁置集。

接下来,我将构建排队到 TFS 服务器。在构建定义中,我选择了刚刚创建的搁置集。但是,当 TFS 构建服务器处理排队构建时,它的行为就好像它忽略了搁置集。当编译器处理那些有修改文件的项目时,sources文件夹中的头文件不包含指定shelfset中的更改。

这是有趣的一点。在处理构建时,我已经查看了构建服务器上创建的文件。首次创建和填充源文件夹时,会显示指定搁置集中的更改。但是当构建过程到达相关项目文件时,源文件已更改回没有搁置更改的版本。

【问题讨论】:

  • 您是否完全自定义了构建?
  • 没有。除了更改设置以使用指定的搁置集构建最新源之外,当我对构建进行排队时,我没有更改任何其他参数。
  • 明确一点:您使用的是哪个构建过程?它是默认的构建过程,还是定制的?从您的回答中我无法判断您是否知道构建过程可以自定义 - 而不仅仅是参数化。
  • 抱歉 - 这是默认进程。我想我找到了问题所在。在构建过程中发生错误,停止构建过程,并且只有在此错误之后,构建服务器上的源才从“最新版本 + Shelveset”更改为“最新版本”。不过,仍然不确定为什么会这样。

标签: tfs tfsbuild shelveset


【解决方案1】:

据我所知,最新版本的源代码和所选变更集已复制到构建服务器,但是当发生构建错误时,源代码仅替换为最新版本。

不知道为什么会这样。当它第一次发生时,它看起来好像在构建错误之前源正在从“最新+搁置”更改为“最新”。现在我知道情况并非如此,我不会再担心这个了。

【讨论】:

    猜你喜欢
    • 2015-01-17
    • 1970-01-01
    • 2020-03-18
    • 1970-01-01
    • 2018-01-08
    • 2023-03-31
    • 2015-04-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多