每晚构建和持续集成之间有什么区别?

时间:2011-10-13 15:23:31

标签: continuous-integration nightly-build

夜间构建和持续集成有什么区别?它只是签入/构建/测试的频率吗?例如,如果每小时或每分钟运行一次夜间构建过程,那么它与CI无法区分吗?

这个问题相似但不完全相同:Continuous Integration vs. Nightly Builds

2 个答案:

答案 0 :(得分:3)

持续集成专注于每次签入时构建(和运行测试)。夜间构建每天进行一次,可能会强调测试较少。

实际上,触发构建和运行测试的持续集成签入可能与开发人员全天执行的签入分开。例如,它们可能仅在检入主干时发生,而当天的大部分开发都签入分支。鼓励这些相对频繁地发生,例如每天一次。

更频繁地构建会产生类似的结果,但可能会导致一些浪费的努力,即在没有任何变化时运行测试。另一个可能的区别是,在持续集成的每个构建中都进行了大量的测试。有时需要开发人员干预来修复导致的错误。由于几个原因,夜间构建过程会更加困难。包括更难以将错误与特定的变更和责任方联系起来。

答案 1 :(得分:0)

这可能取决于测试次数和使用时间。如果完整构建和完整测试需要几分钟,则可以在每次推送到源之后以连续集成的方式运行它。

就我而言,我们的每晚构建大约需要2个小时,构建所有源代码并运行所有测试。在日常构建中,我们只构建一些库并运行一些测试,具体取决于分支和开发人员可能修改的内容。

相关问题