1. 程式人生 > >簡單理解持續整合、持續交付、持續部署

簡單理解持續整合、持續交付、持續部署

「持續整合(Continuous Integration)」、「持續交付(Continuous Delivery)」和「持續部署(Continuous Deployment)」這三個概念有很詳細的解釋。這裡借用文中的插圖,說一下我對這三個概念的理解。

持續整合
這裡寫圖片描述
持續整合強調開發人員提交了新程式碼之後,立刻進行構建、(單元)測試。根據測試結果,我們可以確定新程式碼和原有程式碼能否正確地整合在一起。

持續交付
這裡寫圖片描述
持續交付在持續整合的基礎上,將整合後的程式碼部署到更貼近真實執行環境的「類生產環境」(production-like environments)中。比如,我們完成單元測試後,可以把程式碼部署到連線資料庫的 Staging 環境中更多的測試。如果程式碼沒有問題,可以繼續手動部署到生產環境中。

持續部署
這裡寫圖片描述
持續部署則是在持續交付的基礎上,把部署到生產環境的過程自動化。我個人覺得持續整合、持續交付、持續部署非常值得推廣。開發過程中最怕整合時遇到問題導致返工,而持續整合、持續交付、持續部署恰恰可以早發現早解決,從而可以避免這個問題。