一、持续交付
持续交付可以细分为持续集成、持续交付、持续部署三个概念。
持续交付未来会像源代码管理一样,成为开发团队的标配。
1、持续集成 continuous integrate
持续集成指频繁地将代码集成到主干,在代码集成到主干之前,必须通过自动化测试(单元测试、集成测试、端对端测试等),只要有一个测试案例失败,就不能集成。
优点有两个:快速发现错误、防止分支大幅偏离主干。
2、持续交付 continuous delivery
基于持续集成,在自动化测试完成后,同时构建生成各个环境的发布包,部署到测试环境,但生产环境的部署需要手动确认。
3、持续部署 continuous deployment
在持续交付的基础上,对生产环境的部署也采用自动化。
二、为什么要使用持续交付?
尽快暴露问题: 很多问题在合并到分支之前就能被发现,另外每次合并都发布测试环境也能让测试人员尽早介入,及时发现问题。
极大提升效率: 从合并到部署都实现来自动化,极大提升效率。
提升质量
降低项目成本: 长远来看,对降低项目整体成本有利。
三、如何搭建持续交付环境?
git、jenkins、自动化脚本等。