试图确定为什么签入一个项目中的文件会触发另一个不相关项目中的构建

Trying to determine why checking in files in one project, would trigger a build in another unrelated project

我的一位同事对名为“数据库转换”的项目进行了一些更改。有 2 个 TFS 构建与 PharmacyWarehouse 项目相关联。这是一张图片,所以你可以看到我在说什么。

以前的 TFS 管理员设置了此配置。他走的时候我继承了它。如您所见,PharmacyWarehouse 只是一个文件夹。但是这 2 个构建有一个 Visual Studio 构建步骤,它只查看 PharmacyWarehouse 文件夹中的 PharmacyWarehouse.sln 文件。我看过那个 .sln 文件,它只引用包、PharmacyWarehouse 和 UnitTests 文件夹。我查看了 .csproj 文件,它们只引用了那些 folders/VS 个项目。

我查看了项目中的 DBConversion.sln 和 DBConversion.csproj 文件 | “数据库转换”文件夹。它仅引用 folder/VS 项目。我的同事正在编辑的文件在 Projects | “数据库转换” |模型文件夹。

为什么要在项目中签入更改 | “数据库转换” |模型文件夹导致 TFS 触发器监视 PharmacyWarehouse.sln 触发?是因为他们的文件夹而不是 TFS 项目吗?

我们正在使用 TFS 2015

根据屏幕截图,您正在使用 TFVC 版本控制。

  1. 打开构建定义,单击选项卡 Trigger 并检查触发器字段 Path specification 并确保路径是$/Pharmacy Warehouse /DB Conversion

  2. 打开构建定义,单击选项卡 Get sources 并检查字段 Workspace mappings,确保路径是$/Pharmacy Warehouse /DB Conversion.

配置后,如果我们将更改推送到文件夹或项目DB Conversion,它将触发此构建并且只构建DB Conversion。