持續集成(Continuous Integration),也就是咱們常常說的CIhtml
持續集成(CI)是一種實踐,可讓團隊在持續的基礎上收到反饋並進行改進,沒必要等到開發週期後期才尋找和修復缺陷linux
bug老是在最後才發現git
越到項目後期,問題越難解決編程
軟件交付時機沒法保障windows
程序常常須要變動服務器
無效的等待變多svn
多人協做開發,因爲開發只會測試本身的代碼,多人的代碼集成在一塊兒,不免會出現這樣那樣的bug。這時就須要jenkins對集成後的代碼進行打包編譯,若是有問題會進行反饋工具
持續集成並非要等到項目穩定,而是在項目一開始就要進行,這樣才能儘早發現問題,解決問題post
1. 解放了重複性勞動測試
2. 更快地修復問題
3. 更快地交付成果
4. 減小了手工的錯誤
人和機器的一個最大的區別是,在重複性勞動上,人容易犯錯,而機器犯錯的概率幾乎爲零。因此,當咱們搭建完成集成服務器後,之後的事就交給集成服務器來打理吧
5. 減小了等待時間
持續集成縮短了從開發、集成、測試、部署各個環節的時間,從而也就縮短了中間能夠出現的等待時間
持續集成,意味着開發、集成、測試、部署也得以持續
6. 更高的產品質量
集成服務器每每提供 Code review、代碼質量檢測等功能
對代碼不規範或者有錯誤的地方會進行標識,也能夠設置郵件、短信等進行警告
而開發人員經過 Code review 也能夠持續提升編程的能力
一款持續集成工具
1). jdk 1.8
2). jenkins下載地址: https://jenkins.io/download/ 下載 Long-term Support(LTS) 下的版本
在jenkins平臺中,都是以Job(任務/工程)爲單位去完成一件事情的
jenkins提供平臺,集成各類插件來完成一個Job。想用jenkins平臺來作什麼,先找找有沒有相應的插件。好比:windows命令、linux命令的支持、svn和git代碼獲取、郵件發送等
路徑:系統管理 -> 管理插件 -> 可選插件
jenkins是經過文件形式來存儲和管理數據的
workspace即給jenkins指定一個專門的目錄來存儲其全部的配置和數據
jenkins的workspace是根目錄。每一個Job都有屬於本身的workspace(任務之間互不相干)
路徑:系統管理 -> 系統設置
整個jenkins的全局配置,包括權限管理、插件管理、節點管理等
Job名字、指定當前Job的工做空間、指定當前Job綁定到哪一個執行機上執行等
svn/git等,須要相應的插件支撐
配置好源碼管理後,在執行Job時會自動從相應的源碼庫裏下載代碼到當前Job的工做空間中
觸發器:執行當前任務的條件
經常使用定時構建:相似windows/linux的定時任務。指定當前Job執行的時間
定時構建1:要求天天9點,14點,20點運行這個任務(其中*表明全部的有效值)
注意:若是0-0用H代替,會出現不整點的狀況
定時構建2:要求天天9點到14點之間,每整點運行這個任務(其中*表明全部的有效值)
定時構建3:要求週一到週六天天9點到14點之間,每整點運行這個任務(其中*表明全部的有效值)
Poll SCM
詳細配置郵件請參考 jenkins自動發送郵件配置