目录
前世今生
2004年,Sun公司员工Kohsuke Kawaguchi 基于个人爱好开发了一个名叫Hudson的项目;几年的时间Sun公司内部越来越多的团队在各种各样的项目中使用Hudson;
2008年初,Sun公司认可了这个工具的质量和价值,要求Kohsuke把全部时间投入到Hudson,并未Hudson提供专业服务和技术支持;
2009年,Oracle收购了Sun并继承了Hudson代码库;
2010年年底,Hudson开发者社区与Oracle之间出现了紧张关系,最初是由Java.net基础设施问题引起的,后来Hudson商标问题加剧了相互之间的不愉快(事实上,Oracle是想要Hudson走向一个版本发布更慢的、更严格控制的开发过程,而以Kohuske为首的大多数核心开发人员更希望像过去Hudson稳定工作的那样,继续维持开发、灵活、快节奏的社区主导型模式)
2011年1月,Hudson开发者社区投票通过,正式将这个项目更名为jenkins:
自此,Hudson衍生出的两大分支:
- Jenkins:由大部分原始Hudson开发人员维护;
- Hudson:由甲骨文维护;
Jenkins还是Hudson?
Jenkins就是新版的Hudson,其使用了Hudson的代码库,开发团队和项目管理保持原班人马;
Jenkins社区庞大,bug认定(修复)速度快;
Jenkins开发速度快,Jenkins延续使用众多开发人员喜欢的快速发布周期,每周都会发布新功能、新特性,以及新插件和bug修复,喜欢稳定的可以使用LTS版本(每三个月发布一次新版本,包含重要的bug修复和关键补丁),这个概念类似于Ubuntu LTS版本;
Jenkins简介
Jenkins是使用Java语言编写的一款开源 CI & CD 软件(Continous Integration - 持续集成、Continous Delivery|Deployment - 持续交付与持续部署),在持续集成领域的市场份额居于主导地位,用于自动化各种任务,包括构建、测试和部署软件。
官网给出了Jenkins的6个特性:JenkinsJenkins 是一个开源自动化服务器https://www.jenkins.io/zh/
个人理解:
Jenkins上接git仓库、下接服务器集群,整体流程:
自动化构建 -> 自动化测试 -> 自动化部署
参考:Jenkins权威指南 - Jenkins简介