内容简介:持续集成在频繁地进行集成时,CI可以显著地减少人工追溯和发现问题根源,因此开发者就能够将更多的精力用于开发功能特性上。所以,正如
一、持续集成的特点
- 至少每日集成一次
- 有助于快速解决问题
- 不止一个过程
二、所谓持续,是至少每日集成一次
持续集成 (Continuous Integration, CI)
是一种开发实践,它要求开发者将 代码
在一日内集成到共享仓库一或多次,然后在每次集成时通过脚本自动地进行检查和校验,从而帮助团队在早期发现问题。通过常规的集成,我们可以快速地发现问题,并且更容易地定位问题
三、CI有助于快速解决问题
在频繁地进行集成时,CI可以显著地减少人工追溯和发现问题根源,因此开发者就能够将更多的精力用于开发功能特性上。所以, 持续集成
的代价是小的,而不采用 持续集成
的代价则是昂贵的。如果不采用持续集成,那么在代码集成的时候就会耗费更多的时间,并且在发现问题和解决问题的时候,这种困难可能是指数式地增长的,从而很容易导致项目延期甚至项目失败。所以, 持续集成
可以为团队代码如下的好处:
代码集成 debug
正如 ThoughtWorks
的首席科学家 Martin Fowler
所言:
持续集成并不能够摆脱Bug,但是它却显著地可以让发现和移除bug的过程变得容易
Continuous Integration doesn’t get rid of bugs, but it does make them dramatically easier to find and remove.
四、CI不止一个过程
CI
是由多个重要的 原则
和 实践
支撑的:
1、重要实践
自动化测试 持续集成机器 生产环境
2、怎么做?
- 开发者将代码拉到私人工作区
- 开发完成后,将变更提交到仓库里
-
CI服务器监测仓库,在有新的变更时能够触发一些行为 -
CI服务器构建项目代码,并且运行单元测试和集成测试 -
CI服务器发布 可部署 的测试产品 -
CI服务器为刚刚构建完成的代码分配一个构建版本标签 -
CI服务器通知团队成员构建成功了 -
如果
构建或者测试失败了,CI服务器应该向团队成员告警 - 团队成员尽早地修复构建中产生的问题
-
在项目开发从始至终的过程中,继续
持续集成
3、团队职责
- 经常提交代码
- 禁止提交 出错的 代码
- 禁止提交 未经测试的 代码
- 禁止提交 构建失败的 代码
- 提交代码后,请在系统构建完成后再离开
4、持续部署
持续部署( Continuous Deployment
)和持续集成是密切相关的,它指的是将通过 自动化测试
的软件发布到 生产环境
。持续部署的提出者Jez Humble解释到:”本质上来说,它(持续部署)就是把每个好的构建发布给用户的一种实践方式“
通过采用 持续集成
和 持续部署
,我们不仅能够减少风险和快速地抓取bug,还能够快速地将重心转向软件开发中。带着低风险的发布,我们就能够更快速地响应商业需求和用户需求,这使得 运维
和 部署
的协作更加惬意,这将为团队添砖加瓦,加快发布进程,带来商业竞争优势
参考资料
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
About Face 3
Alan Cooper、Robert Reimann、David Cronin / John Wiley & Sons / 2007-5-15 / GBP 28.99
* The return of the authoritative bestseller includes all new content relevant to the popularization of how About Face maintains its relevance to new Web technologies such as AJAX and mobile platforms......一起来看看 《About Face 3》 这本书的介绍吧!