跳至主要内容

持續交付與部署

持續交付(Continuous Delivery, CD)​

  • 定義:持續交付是一種軟體開發實踐,旨在自動化建置、測試和準備程式碼變更,以便隨時可以將其部署到生產環境中。

  • 運作流程:

    • 每次程式碼變更都會經過自動化的建置和測試流程。
    • 確保所有變更都是可部署的,並且已通過標準化測試程序。
    • 在生產環境部署之前,可能需要手動審核或批准。
  • 優勢:

    • 提高開發效率,減少手動操作錯誤。
    • 更快發現和解決錯誤,因為測試過程是自動化的。
    • 隨時保持可部署狀態,縮短產品上線時間。

持續部署(Continuous Deployment)​

  • 定義:持續部署是持續交付的一個進階階段,所有通過測試的程式碼變更會自動部署到生產環境中,而無需人工干預。

  • 運作流程:

    • 每次通過自動化測試的變更都會立即推送到生產環境。
    • 整個過程完全自動化,從建置到測試再到部署。
  • 優勢:

    • 提高了交付頻率,使得新功能能夠更快地提供給用戶。
    • 減少了人為錯誤和延遲,因為沒有手動批准步驟。
    • 能夠快速獲取用戶反饋,便於快速迭代。

持續交付與持續部署的區別​

  • 手動審核:持續交付通常需要人工審核才能將變更推送到生產環境,而持續部署則完全自動化,不需要人工介入。
  • 應用場景:持續交付適合需要進行多次測試和驗證的應用,而持續部署則適合對穩定性要求較高且能夠承受快速迭代的應用。