持续集成介绍

什么是持续集成

在软件工程中,持续集成(CI)是指将所有开发者的工作副本每天多次合并到主干的做法。Grady Booch 在1991年的 Booch method 中首次命名并提出了 CI 的概念,尽管在当时他并不主张每天多次集成。而 XP(Extreme programming,极限编程)采用了 CI 的概念,并提倡每天不止一次集成。

持续集成在现代软件研发流程中,扮演了十分重要的角色。通过对每次提交的代码不断进行自动化的单元测试、代码检查、编译构建、契约测试,甚至自动部署,持续集成大大降低了开发人员的工作负担,减少了不必要的重复劳动,提升代码质量和开发效率。毫无疑问,持续集成是开发者和研发团队的福音。

当我们提交了一部分修改完成的代码后,我们总是希望可以快速、持续地得到直观且有效的反馈,以达到我们持续快速交付的目的。持续集成也是敏捷开发的好伙伴。

在平时的工程中,总有一部分工作是相对机械化,易出错的(例如打包、部署),把这部分工作较给机器来做,我们仅需要轻轻地点一下鼠标泡杯咖啡就能让自己轻松地完成工作。

持续集成服务器就是能够采用自动化的手段,来解放人的双手,实现项目持续集成的工具。

持续集成的优势

1.解放了重复性劳动。
自动化部署工作可以解放集成、测试、部署等重复性劳动,而机器集成的频率明显比手工高很多。

2.更快地修复问题。
持续集成更早的获取变更,更早的进入测试,更早的发现问题,解决问题的成本显著下降。

3.更快的交付成果。
更早发现错误减少解决错误所需的工作量。集成服务器在构建环节发现错误可以及时通知开发人员修复。集成服务器在部署环节发现错误可以回退到上一版本,服务器始终有一个可用的版本。

4.减少手工的错误。
在重复性动作上,人容易犯错,而机器犯错的几率几乎为零。

5.减少了等待时间。
缩短了从开发、集成、测试、部署各个环节的时间,从而也就缩短了中间可以出现的等待时机。持续集成,意味着开发、集成、测试、部署也得以持续。

6.更高的产品质量。
集成服务器往往提供代码质量检测等功能,对不规范或有错误的地方会进行标致,也可以设置邮件和短信等进行警告。

CODING 持续集成

然而想在项目和团队中实施持续集成,却不是一件简单的事情。CODING 持续集成(CCI)全面兼容 Jenkins 的持续集成服务,支持 Java、Python、NodeJS 等所有主流语言,并且支持 Docker 镜像的构建。图形化编排,高配集群多 Job 并行构建全面提速您的构建任务。CCI 支持主流的 Git 代码仓库,包括 CODING 代码托管、GitHub、GitLab 等等。在构建依赖拉取方面,对于包括 Maven,NPM 在内的主流镜像源有专用网络优化,保证拉取速度,进一步提升构建的速度。

文档是否对您有用?
感谢反馈有用
感谢反馈没用