你能解释下 Gitflow 工作流程吗?
gitflow是一个开发协作模型 对应软件是sourceTree
Gitflow 工作流程使用两个并行的、长期运行的分支来记录项目的历史记录,分别是 master 和 develop 分支。
- Master,对应线上环境,随时准备发布线上版本的分支,其所有内容都是经过全面测试和核准的(生产就绪)。
- Hotfix,对应线上环境,维护(maintenance)或修复(hotfix)分支是用于给快速给生产版本修复打补丁的。修复(hotfix)分支很像发布(release)分支和功能(feature)分支,除非它们是基于 master 而不是 develop 分支。
- Release,对应预上线环境,用于测试人员测试使用,用于合并到develop和master分支。
- Develop,对应测试环境,是合并所有功能(feature)分支,并执行所有测试的分支。只有当所有内容都经过彻底检查和修复后,才能合并到 master 分支。
- Feature,对应开发环境,每个功能都应留在自己的分支中开发,可以推送到 develop 分支作为功能(feature)分支的父分支。
jenkins
CI(Continuous Intergration ):持续集成,代码编译,打包,checkstyle,跑单元测试,变成自动化的流程,让开发人员只专注代码的编写。
CD(Continuous Delivery):持续交付,包含CI,不是流程(pipeline),使用CI的结果,进行持续测试,进行冒烟测试,自动化测试,确保这个包可以交付的(不是真正部署到生产环境上)。
CD(Continuous Deplyment):持续部署,是流程。
