软件开发生产线 CODEARTS-持续交付与持续部署概念解读:对持续交付与持续部署的解读
对持续交付与持续部署的解读
对于持续交付以及持续部署等概念的解读,核心就是一句话:将技术行为与业务决策解耦。持续集成是一个开发实践,持续部署是一个技术操作,持续交付是一个业务行为。
“持续交付是指,所有开发人员都在主干上进行小批量工作,或者在短时间存在的特性分支上工作,并且定期向主干合并,同时始终让主干保持可发布状态,并能做到在正常工作时段里按需进行一键式发布。开发人员在引入任何回归错误时(包括缺陷、性能问题、安全问题、可用性问题等),都能快速得到反馈。一旦发现这类问题,就立即加以解决,从而保持主干始终处于可部署状态。”
“持续部署是指,在持续交付的基础上,由开发人员或运维人员自助式的定期向生产环境部署优质的构建版本,这通常意味着每天每人至少做一次生产环境部署,甚至每当开发人员提交代码变更时,就触发一次自动化部署。”
“持续交付是持续部署的前提,就像持续集成是持续交付的前提条件一样。”
这里面涉及到的有几个概念:持续集成、持续交付、持续部署,以及持续发布。