首先什么是持续化集成工具:
持续化集成的核心价值在于:
1.持续化集成中的任何一个环节都是自动完成的,无需太多人工干预,有利于减少重复过程以节省时间,费用和工作量。
2.持续集成保证了每个时间点团队成员提交的代码是能成功集成的,换言之,任何时间点都可以第一时间发现软件的集成问题,使任意时间发布可部署的软件成为了可能。
3.持续集成还可以利于软件本身的发展趋势,这点在需求不明确或者频繁性变更时的情境中尤为重要,持续集成的质量能帮助团队进行有效决策,同时建立对团队开发的信心。
小结:持续化集成是自动完成的,保证每个时间点的提交上去的代码可以成功集成,可以使团队更好的应对需求不明确,或者频繁变更的情况。
Jenkins的特点:
1.基于Java开发。
2.用于监控持续重复的工作。
3.可以做到:
(1).持续的软件版本发布/测试。
(2).监控外部调用执行的工作。
4.可以实时的监控集成中存在的错误。
5.提供详细的日志文件和提醒功能。
6.可以用图表的形式形象的展示项目构建的趋势和稳定性。
优点有:
1.易安装
2. 变更支持:Jenkins能从代码仓库(GIT)中获取并产生 代码更新列表并输出到编译输出的信息中。
3.测试报告:也就是用以图表等形式提供详细的测试报告功能。
4.拥有大量的插件。
典型的工作流程:
1.从代码仓库获取代码(pull)。
2.编译
3.测试
4.发布
作用:
(1)Jenkins会定时的获取最新的代码,自动运行我们写的编译脚本,编译成功后,再运行测试脚本,这一步成功后,接着会把新的程序发布出去,特别的,在最后一步,可以选择手动发布,或自动发布,建议选手动发布,发布前可以再确认一下。 也就是说Jenkins可以帮我们在写完代码之后,一键完成后面的所有工作。
(2) 更重要的是,一个团队的开发流程一开始是不一致的,不一致往往会带来各种各样的问题,最终体现在软件的质量或开发效率不高上,而Jenkins会规范大家的行为。