研发流程中涉及到的角色
- PM(Product Manager)
产品经理,又称品牌经理。写PRD文档的。 - RD(Research and Development engineer)
研发工程师,俗称 Java 猿、PHP猿、GO猿、Python猿。 - QA(Quality Assurance)
- 测试的同学,QA的主要职责就是质量保证工作,属于质量保证部门。
- 大公司都是几个高级QA带着一帮外包QA工作。
- OP(Operator)
运维的同学,搞服务器会算法的大佬。 - FE(Front-End)
前端开发同学,也属于研发部门。 - UE(User Experience)
用户体验,主要研究交互的优不优雅啥的,感觉比UI
高级。 - UI(User Interface)
用户界面,设计产品原型图的同学。 - DBA(Database Administrator)
数据库管理员,专门研究数据库的大佬。 - MRD(Market Requirements Document)
市场需求文档,唯一不用猿们看的文档,因为是PM给老大们看的。 - PRD
产品需求文档,需要猿们经常看的文档。
开发过程当中的git分支管理
介绍
多人参与开发时的 GIT 分支管理模型,使用的是gitlab来作代码管理与权限控制。
服务器部署环境
通常来讲,服务器端分如下几种运行、部署环境
- staging:用于开发功能时给 RD 测试用,代码、数据库都是测试环境的。数据库
- preview:用于代码部署到生产环境前的测试,代码是准生产版本,数据库是生产环境的。
- production:生产环境,代码、数据库都是生产环境的。
以上环境的代码稳定版依次提升。
分支种类
为配合以上几种部署环境,代码库分如下几种类型的分支
-
staging 分支:用于 staging 环境的部署。
-
master 分支:GIT 的默认分支,提供最新、稳定的代码。
-
preview 分支:用于 preview 环境的部署。
-
release 分支:用于 production 环境的部署,保持代码随时可发布到生产环境。
以上几个分支会永久存在于代码库中,在开发功能、修复 BUG 的过程当中,还会用到几种分支。