签入政策未应用于 TFS 2015

Check-in policy is not being applied to the TFS 2015

我想阻止用户签入,以防他们要签入的代码未被编译。

我在设置 -> 团队项目 -> 源代码管理 -> 签入策略选项卡中添加了构建策略。

这不起作用,我可以签入未编译的代码。

如何在TFS中添加这样的策略?

构建政策的作用有点奇怪。它不会检查您的代码是否在本地构建,它会转到 TFS 服务器并检查是否配置了 CI 或门控构建来触发建议的代码更改。如果有,它会检查最后一次构建是否成功。如果不是,它会阻止添加更多可能无法构建的代码更改。

这允许团队签入将导致服务器上的构建成功的特定代码更改。提交这些更改的开发人员使用 "by-pass policy" 选项将他的更改强制传递到服务器。如果构建成功,其他开发人员可以再次正常签入他们的更改。

如果没有这种保护,开发人员可能会排队等待数小时的构建,但最终都会失败,从而浪费宝贵的时间来获取反馈,并且可能只会让修复损坏的构建变得更加困难。

如果您没有配置 CI 或门控构建,此策略似乎不会执行任何操作,因为它允许您在不提示的情况下提交更改。

据我所知,没有政策要求您的本地构建成功。