何时使用门控办理登机手续?

H A*_*H A 14 continuous-integration build tfsbuild tfs2010 gated-checkin

我正在使用TFS 2010.目前我只在主干(MAIN)分支上使用Gated Check-in构建.而且,我在DEV和RELEASE分支上使用CI.

  • 为什么不在所有分支上使用Gated Check-in构建?
  • 在什么情况下,您不应该在DEV和RELEASE分支上使用Gated Check-in构建?
  • 是否总是在每个分支上使用Gated Check-in构建更好?

bry*_*mac 10

在我们非常庞大的团队中,我们还在主分支和开发/功能分支(其中许多)中进行了门控.

Gated为分支提供了更多保护,但是如果整个开发团队在该分支中进行了更改,则可以使用非常大的团队和大型代码库来备份队列.

CI为开发人员提供了更多信任,同时也知道任何问题都会很快被发现.它更加乐观,并允许团队更快地移动,这适合开发分支.

在这两种情况下,开发人员都会运行单元测试并测试他们正在更改的代码.CI(影响团队)和Gated(消耗队列中的时间)不应该取代测试 - 应该有一个比我没有尝试过的更复杂的合理解释.

整个团队在功能/开发分支中使用CI进行大部分周期,在更高的分支中有更多的人在游戏稳定期间 - 后两种条件都支持门控的情况.

在一个大型团队中,我们还需要并行完成CI构建和滚动测试,以便在构建时间不是微不足道时更快地发现问题,并且完整的测试套件也不是一件容易的事.在这种情况下,人们正在检查,CI正在接收最后一批签入,运行构建,当构建丢失时,另一台机器正在启动并运行测试套件.