当活动(即未隐藏)目录的内容更改时,TFS 中是否可能不触发 CI 构建?
Is it possible in TFS NOT to trigger a CI build when the content of an active (i.e. NOT cloaked) directory changes?
我的场景如下:
- 开发人员签入 SQL 更改目录 ClientDB
- 专用构建唤醒,从签入的文件中提取元数据,对其进行处理并将结果签入同级目录 ClientMetadata
(开发者不允许在ClientMetadata下签入)
烦人的副作用是,因为专用构建是一个 CI 构建,它会唤醒两次:
- 一次用于 ClientDB 的更改,使其更新 ClientMetadata
- 第二次,由于其自身在 ClientMetadata 中的更改 - 毕竟,此目录在构建的“源设置”部分中显示为活动目录:
理想情况下,我希望 ClientMetadata 目录在工作区中可用,但我不希望那里的更改触发构建。
可能吗?
不适用于 XAML 版本。这在 TFS 2015 中引入的构建系统中是绝对可能的。
当您 select 此触发器 (CI) 每当有人签入代码时,构建将 运行.
实际上不建议在构建管道期间将文件签入源代码管理。
如果您不想隐藏 ClientMetadata 文件夹,但仍希望在获取源代码期间在构建代理上将其下拉。请尝试以下解决方法:
您可以删除此文件夹的活动状态并添加自定义 activity 以仅从 TFS 服务器路径 ($/../../ClientMetadata) 获取文件到代理 $(BuildDir)。
如果构建中的第二次签入是使用末尾带有文本 ***NO_CI***
的签入注释完成的,持续集成触发器将被抑制。
这是一个 hack,但它是门控签入如何使用 TFS 进行 OOTB。
What does ***NO_CI*** stand for?
我的场景如下:
- 开发人员签入 SQL 更改目录 ClientDB
- 专用构建唤醒,从签入的文件中提取元数据,对其进行处理并将结果签入同级目录 ClientMetadata
(开发者不允许在ClientMetadata下签入)
烦人的副作用是,因为专用构建是一个 CI 构建,它会唤醒两次:
- 一次用于 ClientDB 的更改,使其更新 ClientMetadata
- 第二次,由于其自身在 ClientMetadata 中的更改 - 毕竟,此目录在构建的“源设置”部分中显示为活动目录:
理想情况下,我希望 ClientMetadata 目录在工作区中可用,但我不希望那里的更改触发构建。
可能吗?
不适用于 XAML 版本。这在 TFS 2015 中引入的构建系统中是绝对可能的。
当您 select 此触发器 (CI) 每当有人签入代码时,构建将 运行.
实际上不建议在构建管道期间将文件签入源代码管理。
如果您不想隐藏 ClientMetadata 文件夹,但仍希望在获取源代码期间在构建代理上将其下拉。请尝试以下解决方法:
您可以删除此文件夹的活动状态并添加自定义 activity 以仅从 TFS 服务器路径 ($/../../ClientMetadata) 获取文件到代理 $(BuildDir)。
如果构建中的第二次签入是使用末尾带有文本 ***NO_CI***
的签入注释完成的,持续集成触发器将被抑制。
这是一个 hack,但它是门控签入如何使用 TFS 进行 OOTB。
What does ***NO_CI*** stand for?