2022-02-21 15:02:21 +08:00
2022-02-21 14:38:43 +08:00
# 佛山许可登记代码与版本发布管理规范
> <div><span>拟稿:研发中心</span></div>
2022-02-25 10:15:56 +08:00
> <div><span>版本号: 0.0.4 </span></div>
> <div><span>发布时间: 2022.02.25 </span></div>
2022-02-21 14:38:43 +08:00
2022-02-21 15:02:21 +08:00
**目录**
2022-02-21 14:38:43 +08:00
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE - RUN doctoc TO UPDATE -->
2022-02-25 10:21:55 +08:00
2022-02-21 15:02:21 +08:00
- [一、 代码管理 ](#%E4%B8%80-%E4%BB%A3%E7%A0%81%E7%AE%A1%E7%90%86 )
- [1. 代码仓库组织 ](#1-%E4%BB%A3%E7%A0%81%E4%BB%93%E5%BA%93%E7%BB%84%E7%BB%87 )
- [2. 代码分支管理 ](#2-%E4%BB%A3%E7%A0%81%E5%88%86%E6%94%AF%E7%AE%A1%E7%90%86 )
- [3. 分支负责人职责 ](#3-%E5%88%86%E6%94%AF%E8%B4%9F%E8%B4%A3%E4%BA%BA%E8%81%8C%E8%B4%A3 )
- [4. 开发人员管理 ](#4-%E5%BC%80%E5%8F%91%E4%BA%BA%E5%91%98%E7%AE%A1%E7%90%86 )
- [二、 版本发布管理 ](#%E4%BA%8C-%E7%89%88%E6%9C%AC%E5%8F%91%E5%B8%83%E7%AE%A1%E7%90%86 )
- [1. 版本发布工具 ](#1-%E7%89%88%E6%9C%AC%E5%8F%91%E5%B8%83%E5%B7%A5%E5%85%B7 )
2022-02-25 10:21:55 +08:00
- [2. 版本发布时间 ](#2-%E7%89%88%E6%9C%AC%E5%8F%91%E5%B8%83%E6%97%B6%E9%97%B4 )
- [3. 发布流程管理 ](#3-%E5%8F%91%E5%B8%83%E6%B5%81%E7%A8%8B%E7%AE%A1%E7%90%86 )
- [4. 升级负责人职责 ](#4-%E5%8D%87%E7%BA%A7%E8%B4%9F%E8%B4%A3%E4%BA%BA%E8%81%8C%E8%B4%A3 )
- [5. 开发人员管理 ](#5-%E5%BC%80%E5%8F%91%E4%BA%BA%E5%91%98%E7%AE%A1%E7%90%86 )
2022-02-21 15:02:21 +08:00
- [三、 流程图 ](#%E4%B8%89-%E6%B5%81%E7%A8%8B%E5%9B%BE )
2022-02-21 14:38:43 +08:00
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
2022-02-21 15:02:21 +08:00
## 一、 代码管理
2022-02-21 14:38:43 +08:00
2022-02-21 15:02:21 +08:00
### 1. 代码仓库组织
2022-02-21 14:38:43 +08:00
建立Git组织团队名为`fsrl`,专门托管佛山许可登记系统的项目代码,并把开发人员权限统一管理起来。
2022-02-21 15:02:21 +08:00
**组织地址:** http://47.107.61.133:3000/fsrl
2022-02-21 14:38:43 +08:00
**仓库列表**
| 工程名 | 主题 |
| ----------------- | ---------------- |
| fsrl-org | 系统组织架构系统 |
| fsrl-scr | 商事登记2.0 |
| fsrl-server | 许可登记大后台 |
| fsrl-approve | 许可登记大前端 |
| fsrl-biz-speq-web | 质监网办PC前端 |
**master分支**
master分支始终代表生产环境的状态, 不能直接在上面提交代码。Master分支上的Commit应该Tag, 存储正式发布的历史。
2022-02-23 21:58:43 +08:00
**test分支**
2022-02-21 14:38:43 +08:00
2022-02-23 21:58:43 +08:00
test 分支作为功能的集成分支, 包含所有的代码提交记录。test 分支代表针对下一版本的最新交付的代码。开发人员从 test 分支创建新分支,并开发新功能。功能开发完毕后,将对其进行测试,与 test 分支合并,在合并了其他功能分支的情况下使用 test 分支的代码进行测试,然后与 master 分支合并。
2022-02-21 14:38:43 +08:00
2022-02-21 15:02:21 +08:00
### 2. 代码分支管理
2022-02-21 14:38:43 +08:00
1. 工程代码与分支需要严格规范管理起来,划分清楚工程与分支的边界
2. 针对同个事项模块开发,涉及多个子工程,要统一分支命名
3. 设立模块分支代码管理负责人,负责日常合并、与其他模块相关协同等操作
| 涉及工程 | 功能模块 | 分支名称 | 分支负责人 |
| ----------------------------------------------------------- | -------- | ---------- | ---------- |
| `fsrl-scr` ,`fsrl-server`,`fsrl-approve` | 商事登记 | shangshi | |
| `fsrl-scr` ,`fsrl-server`,`fsrl-approve` | 一照通行 | yizhaotong | |
| `fsrl-scr` ,`fsrl-server`,`fsrl-approve` | 食药许可 | shiyao | |
| `fsrl-scr` ,`fsrl-server`,`fsrl-approve`,`fsrl-biz-speq-web` | 质监许可 | zhijian | |
2022-02-21 15:02:21 +08:00
### 3. 分支负责人职责
2022-02-21 14:38:43 +08:00
1. 每天负责合并master分支代码到开发分支上
2022-02-23 21:58:43 +08:00
2. 上线发版需要经过测试环境测试, 主动把代码合并test分支上
2022-02-21 14:38:43 +08:00
3. 发版需要告知升级负责人,本次升级涉及那些工程以及说明,要通过文本方式告知,留底
2022-02-21 15:02:21 +08:00
### 4. 开发人员管理
2022-02-21 14:38:43 +08:00
1. 编写代码时,要在正确的分支下开发,特别是负责多个模块开发人员,禁止代码串门不相关分支
2. 每天来了, 先拉取同步远程仓库的代码, 并在下班或定期提交代码到Git仓库, 禁止攒着代码放大招
3. 禁止个人独立创建开发分支,要经过负责人同意
5. 开发规范可参考: [技术规范 ](http://47.107.61.133:3000/chinaweal/public/src/branch/master/技术规范 )
2022-02-21 15:02:21 +08:00
## 二、 版本发布管理
2022-02-21 14:38:43 +08:00
2022-02-21 15:02:21 +08:00
### 1. 版本发布工具
2022-02-21 14:38:43 +08:00
2022-02-24 16:09:04 +08:00
版本系统主要功能有,升级补丁,退回版本,补丁文件防篡检验。改生产环境发布版本,需要通过版本管理系统工具发布,禁止私自骚操作。
2022-02-21 14:38:43 +08:00
2022-02-25 10:15:56 +08:00
**版本打包服务器**: 172.22.80.91:22
2022-02-21 14:38:43 +08:00
**控制端访问地址**: http://172.22.80.91:8086/incre/web/#/control/app
**佛山客户端访问地址**: http://19.130.241.146:9888/incre/web#/client/project
**顺德客户端访问地址**: http://19.202.179.137:9888/incre/web#/client/project
2022-02-22 18:59:05 +08:00
### 2. 版本发布时间
系统升级要按照制定的时间执行,各模块的负责人要提前把代码功能测试好并提交,并告知升级负责人。逾期得等到下次升级,紧急情况下,可以向项目经理申请,通过方可以执行升级。
2022-02-22 19:07:55 +08:00
| 环境 | 升级时间 |
| -------- | ---------------- |
2022-02-22 19:08:24 +08:00
| 生产环境 | 周四( 19点) |
2022-02-22 19:07:55 +08:00
| 测试环境 | 获得准许即可升级 |
2022-02-22 18:59:05 +08:00
### 3. 发布流程管理
2022-02-21 14:38:43 +08:00
2022-02-23 21:58:43 +08:00
1. 每次发布版本要经过测试环境验证, 流程: 测试环境( test) > 正式环境( master)
2. 分支合并由分支负责人合并到test, 测试环境测试没有问题, 再由升级负责人合并到主线master上打包发布正式环境
2022-02-21 14:38:43 +08:00
3. 测试环境发布版本,可以由分支负责人来负责打包升级
4. 生产环境发布版本,由升级负责人打包升级,并且只能使用版本打包服务器打包
2022-02-24 16:09:04 +08:00
5. 生产环境升级与回退只能使用版本管理系统操作
2022-02-21 14:38:43 +08:00
2022-02-22 18:59:05 +08:00
### 4. 升级负责人职责
2022-02-21 14:38:43 +08:00
2022-02-23 21:58:43 +08:00
1. 合并分支test至master主线
2022-02-21 14:38:43 +08:00
2. 生产环境版本系统发布升级
2022-02-24 16:09:04 +08:00
3. 系统回退版本的操作
2022-02-21 14:38:43 +08:00
2022-02-25 10:15:56 +08:00
### 5. 开发人员管理
1. 每次升级的代码,编写开发人员,需要保持在线状态
2. 修改了工程的静态配置文件,需告知分支负责人
3. 变更了库表字段,需告知分支负责人收集转交给数据库负责人
2022-02-21 15:02:21 +08:00
## 三、 流程图
2022-02-21 14:38:43 +08:00
2022-02-21 14:44:25 +08:00
< img src = "../img/佛山许可登记代码与版本发布管理规范.png" style = "width:100%" / >