Jenkins能否为构建提供TFS门控签入代码?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jenkins能否为构建提供TFS门控签入代码?相关的知识,希望对你有一定的参考价值。

我试图让詹金斯拉TFS门控签入代码,但没有这样做。

我已经设法在TFS中添加了一个Jenkins构建步骤,这个构建步骤是在Jenkins中启动构建作业的“触发器”,这个作业从TFS获取源代码并编译它,问题是这段代码没有门控报到。

例如:

  1. 我的代码库是“A”,编译工作正常。
  2. 我正在推动新的更改(让我们称之为“B”delta)应该打破构建(无效的c#语法)。
  3. 这会在TFS中触发一个调用Jenkins作业的构建,这个作业只占用“A”代码(没有“B”delta)。
  4. Jenkins精心构建代码(仅基于“A”),然后TFS将此构建标记为succsusfully,并将坏的“B”delta代码放入其中。
  5. 现在每个更改集包括对此的修复将导致下一个构建中断,因为jenkins将采用错误的“B”代码并始终失败。

有没有办法让Jenkins使用当前的门控签名来获取代码?

我想使用Jenkins构建而不是TFS的原因是,Jenkins中.Net Core 2.0的构建过程比TFS快了大约X4,我们的源代码控制在TFS中管理。

使用:TFS - 版本15.117.26714.0

答案

要避免此问题,可以在队列Jenkins作业任务之前添加VS Build任务:

enter image description here

以上是关于Jenkins能否为构建提供TFS门控签入代码?的主要内容,如果未能解决你的问题,请参考以下文章

TFS 2010 从门控签入中排除文件类型

TFS 2010:主分支的门控签到;在开发分支上滚动构建?

如何从詹金斯工作区将EAR签入到TFS

是否有自动为您格式化代码的 TFS 签入策略?

tfsbuild - TFS 构建定义 - 要部署的默认 Web 应用程序

如何构建仅签入代码文件以及如何仅签入该构建的 tfs 中的代码工件?