# 服务部署
- 蓝绿
维护两个相同的主机环境,一个“生产”环境,一个“预发布环境”,通过调度系统把流量引流到期望的部署环境,它需要切换整个部署
- 金丝雀
一部分客户重新引流到新版本部署中,如果新版本的服务没有问题,继续增加流量,随着时间推移,新版本完全替换以前旧版本,并对所有用户生效
- 功能开关
简单的功能增加开头,在生产环境发现问题时关闭新功能
- 暗箱发布
# 版本管理
- Master:主分支,最近发布到生产上的分支,只能从其它分支合并,不能在这个分支上修改代码
- Develop:包含所有要发布到下一个Release的代码
- Feature
- Release:需要发布一个新的Release时,基于Develop创建一个Release分支,完成Release后,合并到Master和Develop分支
- Hotfix:线上发现Bug后,创建,完成后合并到Master和Develop,其发动会进入下一次Release