概述
持续集成是一种软件开发实践。即团队开发成功经常集成他们的工作,通常每个成员每天至少集成一次,也就意味着每天有多次集成发生
每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽快的发现集成错误。许多团队发现这个过程可以大大减少集成的问题,让团队能够更快的开发内聚的软件
要素
1.统一的代码库
2.自动构建
3.自动测试
4.每个人每天都要向代码库主干提交代码
5.每次代码递交后都会在持续集成服务器上触发一次构建
6.保证快速构建
7.模拟生产环境的自动测试
8.每个人都可以很容易的获取最新可执行的应用程序
9.每个人都清楚正在发生的状况
10.自动化的部署
CI/CD
是一种通过在应用开发阶段引入自动化来频繁向客户交付应用的方法。CI/CD 的核心概念是持续集成、持续交付和持续部署。
CI全名Continuous Integration 中文意思是持续集成
是一种软件开发时间,持续集成强调开发提交新代码之后,立刻进行构建、(单元)测试。根据测试结果,我们可以确定新代码和原有的代码能否正确的集成在一起
CD全名Continuous Delivery 中文意思是持续交付
是在持续集成的基础上,将代码部署到更贴近真实运行的环境(类生产环境)中,持续交付的目标是拥有一个可随时部署到生产环境的代码库。
其实一般项目完成前面这两个就可以了,自动化测试没有问题就可以手动部署到生产环境,如果想继续扩展,可以引入持续部署环节
CD 持续部署(Continuous Deployment)
对于一个成熟的 CI/CD 管道来说,最后的阶段是持续部署、是作为持续交付的延伸。持续部署可以自动将应用发布到生产环境
持续部署在很大程度上都得依赖精心设计的测试自动化,前期投资还是会很大。
CI/CD优点
重复的工作用自动化来代替、减少时间成本、版本发布时间减短了。能快速发现集成过程中的问题,减少解决问题的成本。
说了半天,如何做持续集成开发项目呢,jenkins就是一个非常流行的持续集成工具。快去了解jenkins吧