我们先来了解一下什么是持续集成。
持续集成是一种开发实践,要求开发人员每天多次或更频繁地向公共代码库提交代码更改,每次提交都将触发自动构建。
通过这种开发实践,团队可以尽早地发现问题。除此之外,持续集成工具中,还可以整合其他自动化功能,如在测试服务器上构建部署应用程序、向相关团队提供构建和测试结果等。
让我们通过一个用例来理解它的重要性。
诺基亚公司的持续集成
你可能在人生的某个阶段用过诺基亚手机。在Nokia的一个软件产品开发项目中,有一个称为夜间构建(Nightly build)的过程。
夜间构建可以看作是持续集成的前身。这意味着每天晚上自动系统都会将添加到公共代码库中的代码提取出来,然后构建这些代码。
这个想法与持续集成非常相似,但是由于夜间构建的代码非常大,所以定位和修复bug非常麻烦。
因此,诺基亚采用了持续集成(CI)。向代码库的每次提交都被构建,如果构建结果显示代码中有错误,那么开发人员只需检查特定的提交。这大大降低了定位和修复bug的难度,减少了新版发布的时间。