Teamcity快照相关性:如何防止运行已通过的构建

Teamcity快照相关性:如何防止运行已通过的构建,teamcity,Teamcity,以下是场景:我有一个TeamCity“主”构建,它汇总了其他11个构建的结果。 我正在使用快照依赖项。 这在正常情况下可以正常工作。但如果任何依赖子生成失败,并且再次触发主生成,则会触发所有11个依赖生成。我只希望触发失败的生成,而不是触发所有生成。 有没有办法做到这一点 通常,如果11个相关字段中的任何一个的源代码没有更改,它们将排队,但只会静默地进入成功 如果您只需要以前版本中的人工制品,您可以尝试设置人工制品依赖项而不是快照依赖项。这样,如果中间目标失败,您就可以重新运行它,并在链的其余部

以下是场景:我有一个TeamCity“主”构建,它汇总了其他11个构建的结果。 我正在使用快照依赖项。 这在正常情况下可以正常工作。但如果任何依赖子生成失败,并且再次触发主生成,则会触发所有11个依赖生成。我只希望触发失败的生成,而不是触发所有生成。 有没有办法做到这一点

  • 通常,如果11个相关字段中的任何一个的源代码没有更改,它们将排队,但只会静默地进入成功

  • 如果您只需要以前版本中的人工制品,您可以尝试设置人工制品依赖项而不是快照依赖项。这样,如果中间目标失败,您就可以重新运行它,并在链的其余部分继续运行。顺便说一下,如果要设置人工制品依赖项,还必须在目标上添加“Finish run触发器”

  • 此外,在设置快照依赖项时,还有一个选项“如果有合适的快照依赖项,则不要运行新快照”。请启用它,看看它是否解决了您的问题


  • 在tc8中,某些设置会干扰构建重用。从文档中:

    VCS根目录中的某些设置可以有效地禁用构建重用。 这些设置是:

    Subversion:签出,但忽略模式更改

    CVS:按标记模式签出

    Perforce:通过设置为客户端的标签而不是客户端映射进行签出

    Starteam:签出模式选项设置为查看标签或促销日期

    (来源:)