飞蚕版本管理与代码规范管理制度V1.0

研发部3周前发布 飞蚕
30 0 0
招募令
飞蚕版本管理与代码规范管理制度V1.0
文件版本:V1.0
适用主体:公司研发部(前端、后端、客户端)、测试部、产品部、技术负责人、管理层
适用范围:本制度适用于公司所有产品系统、Web端、移动端、后台系统、功能迭代、BUG修复、技术优化的代码开发规范、编码约束、Git分支管理、代码提交合并、版本编号规则、版本发布管控、线上故障回滚、版本归档溯源全流程管理,统一研发代码标准、分支流转规则、版本迭代规范与故障处置机制。
制定目的:建立标准化、统一化、可管控、可追溯的代码与版本管控体系,解决代码风格混乱、分支滥用、提交不规范、版本号混乱、合并冲突频发、发布风险高、故障无法快速回滚、版本溯源困难等问题,实现编码统一、分支有序、提交规范、版本可溯、发布可控、故障可回、迭代稳定,保障公司研发代码质量、版本稳定性与迭代安全性。
归口管理部门:研发部(代码规范落地、分支管控、合并审核、版本执行)、技术负责人(规范督导、分支权限管控、版本终审、故障研判)、产品部(版本迭代统筹、版本范围锁定)、测试部(版本质量校验、发布准入核验)、人力资源部(规范考核、违规追责落地)

第一章 总则

1.1 核心管理原则

本制度遵循六大核心原则:规范编码、分支隔离、版本有序、提交留痕、稳步发布、快速回滚。所有代码开发、分支操作、版本迭代、线上发布必须严格遵循统一标准,严禁随意编码、乱建分支、违规合并、私自发布、版本混乱上线。

1.2 制度联动关系

本制度为研发底层核心规范,与《飞蚕项目研发与迭代管理制度》《飞蚕产品需求对接与需求评审管理制度》深度全域联动。本制度的代码规范落地率、分支合规率、版本稳定率、线上故障率,纳入研发团队月度、季度、年度协同考核,是项目迭代交付、版本质量评估的核心依据。

1.3 核心定义说明

1、代码规范:统一团队编码风格、语法标准、注释规范、文件命名、结构分层、安全约束、性能约束的开发准则,保障代码可读性、可维护性、可迭代性。
2、分支管理:基于Git体系的多分支隔离流转机制,区分稳定分支、开发分支、特性分支、修复分支,实现迭代开发与线上环境完全隔离。
3、版本编号:统一线上迭代版本、测试版本、紧急修复版本的编号规则,实现版本唯一标识、迭代溯源、新旧版本区分。
4、代码合并与提交:规范代码提交内容、备注格式、合并审核流程、冲突处理规则,杜绝脏代码、无效代码、违规代码合入正式分支。
5、版本回滚:线上版本出现BUG、故障、业务异常时的紧急撤回、版本还原、数据兜底、故障闭环处置机制。

1.4 全流程总览

规范编码开发 → 特性分支独立开发 → 规范代码提交与备注 → 代码自查与CR审核 → 分支合并与冲突处理 → 版本打包编号 → 测试环境验证 → 预发布校验 → 正式版本上线 → 线上巡检 → 异常判断与紧急回滚(如有) → 版本归档与复盘

1.5 通用硬性红线

1、禁止直接在稳定主干分支开发、禁止无审核合并代码、禁止私自改版本号、禁止未经测试发布、禁止故障拖延不回滚
2、所有代码提交、分支操作、版本发布、回滚操作全程留痕,日志、记录、版本档案统一归档,永久可追溯。

2.1 研发人员(执行主责)

1、严格遵守统一代码规范完成日常开发,保证代码整洁、规范、可维护、无冗余、无安全漏洞。
2、严格按分支规则创建分支、提交代码、处理冲突,不私自新建违规分支、不随意合并代码。
3、规范填写提交备注,清晰记录开发内容、修改范围、修复问题,保证每一次提交可溯源。
4、负责个人代码自查、自测,配合代码评审,及时整改不规范代码、BUG代码。
5、版本发布后跟进线上巡检,出现问题第一时间配合排查、修复、回滚落地。

2.2 技术负责人(管控主责)

1、统筹团队代码规范落地,统一编码标准,定期开展代码评审、规范巡检。
2、管控分支权限、分支生命周期,审核关键代码合并、版本打包、正式发布操作。
3、判定版本编号、版本迭代类型,把控版本发布节奏与发布风险。
4、线上故障时统筹研判、决策回滚方案、指挥技术团队完成故障闭环。
5、定期复盘代码质量、版本问题、发布风险,迭代优化规范体系。

2.3 测试部(质量核验主责)

1、基于对应版本分支开展测试,核对版本编号、迭代范围与需求一致性。
2、校验版本代码改动范围,验证功能完整性、稳定性,拦截异常版本、问题版本。
3、版本上线前完成最终准入核验,确认无高危、严重BUG,出具上线准入结论。
4、线上版本异常时配合回归测试、验证修复效果、核验回滚后系统状态。

2.4 产品部(版本统筹主责)

1、锁定每版本迭代范围,确认版本迭代内容、上线节点、版本迭代类型。
2、核对版本迭代内容与需求评审结论一致性,杜绝超范围、无需求代码上线。
3、跟进版本发布进度、线上效果,统筹版本异常后的业务处置与复盘优化。

第三章 统一代码开发规范

3.1 通用编码核心原则

所有前端、后端、客户端开发统一遵循:简洁规范、统一风格、低冗余、高可读、可复用、可维护、安全合规、性能可控。禁止随意编写冗余代码、废弃代码、硬编码代码,禁止留存测试后门、调试代码、敏感信息代码。

3.2 基础编码规范标准

1、命名规范:文件、文件夹、变量、函数、接口、数据表字段命名统一、语义清晰,杜绝随意缩写、无意义命名,做到见名知意。
2、格式规范:统一缩进、换行、空格、代码排版,全员遵循同一套格式化规则,杜绝个人个性化随意排版。
3、结构规范:严格分层开发,区分业务层、数据层、接口层、工具层,代码职责单一、模块解耦,杜绝逻辑堆砌、代码混乱。
4、复用规范:通用方法、公共组件、工具函数统一抽离封装,禁止重复编写同类逻辑,减少代码冗余。
5、异常规范:所有接口、请求、运算、外部调用必须增加异常捕获、容错处理,避免程序崩溃、页面报错、流程卡死。

3.3 注释与文档规范

1、核心函数、公共方法、复杂逻辑、特殊业务逻辑必须添加标准注释,说明功能、入参、出参、使用场景、特殊说明。
2、新增模块、重大逻辑调整、特殊兼容处理,必须同步更新对应技术文档、接口文档。
3、禁止大面积无注释复杂逻辑、禁止留存废弃无注释旧代码、禁止注释遮挡核心业务逻辑。

3.4 安全与性能规范

1、禁止代码硬编码密钥、账号、密码、接口秘钥、敏感配置,统一使用配置文件、环境变量管理。
2、做好参数校验、防注入、防重复提交、权限拦截,规避代码安全风险。
3、避免循环嵌套、无效请求、冗余查询、资源占用过高代码,保障系统运行性能。
4、上线前必须清理调试代码、打印日志、测试接口、临时逻辑,禁止调试内容遗留线上。

3.5 代码评审(CR)机制

1、所有代码合并至测试分支、主干分支前,必须完成代码评审,由技术负责人或资深研发审核通过方可合并。
2、评审重点核查:代码规范性、逻辑合理性、安全风险、性能问题、冗余问题、BUG隐患、注释完整性。
3、评审不通过代码必须限期整改、重新提交,严禁未评审、评审不合格代码合入正式分支。

第四章 Git分支标准化管理

4.1 分支类型与用途定义

1、主干稳定分支(main/master):线上唯一稳定代码分支,对应正式生产环境,只合并测试通过、可直接上线的稳定代码,禁止直接开发、禁止私自提交、禁止合并未校验代码。
2、测试集成分支(dev/test):版本迭代集成分支,用于汇总所有开发功能、统一测试、版本预打包,所有迭代功能统一合并至该分支集中测试。
3、特性开发分支(feature/*):用于新版本功能开发、新增需求迭代,单功能单分支,分支命名规范:feature/功能名称-开发人-日期。
4、BUG修复分支(fix/*):用于迭代测试BUG修复、轻微问题优化,分支命名规范:fix/问题编号-修复人-日期。
5、紧急热更分支(hotfix/*):用于线上紧急故障、高危BUG、业务瘫痪问题修复,基于主干分支拉出,修复验证后合并主干与测试分支,分支命名规范:hotfix/故障类型-日期。
6、版本归档分支(tag/版本号):每轮正式上线版本打tag归档,作为永久版本快照,用于溯源、回滚、复盘。

4.2 分支生命周期管控

1、特性分支、修复分支:开发完成、测试通过、合并至对应集成分支后,及时清理作废分支,避免分支堆积混乱。
2、紧急热更分支:故障修复上线、版本归档、全量同步后,完成闭环清理。
3、主干分支、测试分支长期保留,持续迭代更新,保持稳定可发布状态。
4、禁止创建无意义、无用途、命名混乱的废弃分支,定期全员清理无效分支。

4.3 分支流转硬性规则

1、所有日常功能开发必须基于最新测试分支拉取特性分支,禁止基于旧版本、主干分支随意开发。
2、线上紧急修复必须基于主干分支拉取热更分支,保障修复纯净、无新增未上线功能。
3、严禁跨分支随意合并、严禁私自合并主干、严禁多功能混杂同一分支导致迭代混乱。
4、分支合并必须保证代码纯净、改动范围清晰,杜绝无关代码、批量冗余改动。

第五章 代码提交与合并规范

5.1 代码提交规范

1、颗粒度规范:单次提交聚焦单一功能、单一问题修改,禁止一次性混杂多模块、多需求改动提交。
2、备注规范:提交备注必须标准化,格式统一:【类型】功能/问题简述,类型包含:新增、优化、修复、重构、适配、兼容、文档。备注清晰可读,可直接追溯改动内容。
3、内容规范:禁止提交调试代码、临时代码、废弃文件、无用资源、本地配置文件。
4、频率规范:日常开发小步高频提交,避免长时间不提交、一次性大批量提交,降低冲突风险。

5.2 代码合并审核流程

1、开发自测完成、本地验证无误后,发起分支合并申请,附带改动说明、测试范围、校验结果。
2、由技术负责人完成代码评审、合并审核,确认代码规范、逻辑无误、无风险后允许合并。
3、合并完成后开发人员及时检查合并结果、处理合并冲突,保证分支代码完整可用。
4、重大模块、核心逻辑、底层架构改动,必须双人复核、重点评审后方可合并。

5.3 冲突处理规范

1、出现代码冲突禁止强制合并、盲目覆盖,必须由对应开发人员核对双方代码逻辑,精准合并、保留有效逻辑。
2、冲突解决后必须本地重新自测、验证功能可用性,避免冲突合并导致逻辑缺失、功能异常。
3、频繁冲突、大范围冲突需及时同步团队,统一开发节奏、梳理分支版本差异,规避重复冲突。

第六章 版本编号标准化规范

6.1 版本编号通用规则

公司所有产品版本统一采用三段式版本号:V主版本.次版本.修订版本(VX.X.X),全程统一、无特殊例外,实现版本唯一标识、迭代递进可追溯。
1、主版本号(第一位):重大架构升级、全新系统重构、整体功能体系改版、颠覆性迭代,主版本号+1,次版本、修订版本归零。
2、次版本号(第二位):常规版本迭代、新增批量功能、模块升级、体系优化,次版本号+1,修订版本归零。
3、修订版本号(第三位):单功能优化、小范围调整、BUG修复、细节适配、紧急热更,仅修订版本号+1。
1、正式迭代版本:严格遵循三段式递进编号,每轮正式上线有序递增,禁止跳号、乱号、回退编号。

6.2 版本分类编号规则

2、测试版本:在正式版本后追加测试标识,格式:VX.X.X-betaX,用于测试环境迭代验证,不做为线上正式版本。
3、紧急热更版本:基于当前线上正式版本递增修订号,单独打tag归档,标注热更标识,区分常规迭代版本。

6.3 版本管控要求

1、每轮正式上线必须打版本tag归档,留存完整版本快照,永久溯源。
2、版本号由技术负责人统一把控、统一递增,禁止开发人员私自修改、自定义版本号。
3、禁止重复版本号、颠倒版本号、随意降级版本号,保证版本迭代线性有序。

第七章 版本发布与线上回滚机制

1、对应分支代码合并完成、代码评审通过、无规范问题、无高危BUG。

7.1 版本发布前置标准

2、测试全量测试、回归完成,出具上线准入结论。
3、产品确认迭代范围无误、业务验收通过。
4、版本号确认、打包完整、预发布环境验证正常。

7.2 分级发布机制

1、常规迭代版本:按固定迭代节奏,预发布验证无误后批量正式上线。
2、重点专项版本:灰度发布、小范围验证、全量推送三步走,降低上线风险。
3、紧急修复版本:快速验证、快速发布、快速兜底,优先保障业务恢复。

7.3 线上版本回滚触发条件

出现以下任意情况,必须立即启动版本回滚机制,无需审批优先止损:
1、线上出现高危BUG、功能瘫痪、核心业务无法使用;
2、数据异常、计算错误、数据丢失、数据错乱风险;
3、系统崩溃、服务宕机、访问异常、兼容性大面积故障;
4、影响用户付费、交易、合规、重大客诉的线上问题;
5、版本发布与需求不符、核心功能缺失导致业务无法正常运转。

7.4 标准化回滚流程

1、快速止损:技术负责人判定故障等级,立即执行版本回滚,恢复上一稳定线上版本。
2、故障锁定:暂停当前迭代发布,锁定问题代码、定位故障原因、明确责任范围。
3、问题修复:针对性完成BUG修复、代码整改、逻辑优化,完成自测与测试验证。
4、重新发布:修复验证无误后,重新打包、灰度验证、正式上线。
5、复盘闭环:完成故障复盘、问题归档、流程优化,杜绝同类问题重复发生。

7.5 回滚管控红线

1、禁止线上故障拖延不回滚、观望处置,放任业务损失扩大;
2、禁止回滚后不排查、不修复、不复盘,直接重复发布问题版本;
3、禁止私自局部回滚、碎片化回滚,必须整版本统一回滚,保证环境一致性。

第八章 台账归档与复盘机制

8.1 版本代码专项台账

研发部建立《版本与代码规范管控台账》,统一记录:分支创建记录、代码提交记录、合并审核记录、版本编号、打包时间、发布时间、上线范围、故障问题、回滚记录、整改结果,实现每一次迭代、每一条改动全程可追溯。

8.2 版本归档资料清单

1、版本编号、tag快照、分支源码归档;
2、代码提交日志、合并审核记录、代码评审报告;
3、版本测试报告、上线准入资料、业务验收记录;
4、线上故障记录、回滚记录、修复整改资料;
5、版本迭代复盘报告、规范优化方案。

8.3 月度规范复盘机制

每月月末技术负责人组织代码与版本专项复盘,重点复盘:代码规范违规问题、分支滥用问题、提交不规范情况、版本混乱问题、线上故障率、回滚次数、迭代风险点,输出整改清单与下月规范落地目标,持续优化研发代码与版本管控体系。

第九章 合规红线与违规追责机制

9.1 代码规范红线

1、禁止编码不规范、批量冗余代码、逻辑混乱、无注释核心逻辑;
2、禁止留存调试代码、敏感信息、后门代码、无效废弃代码上线;
3、禁止安全漏洞、性能隐患代码未整改直接合入正式分支;
4、禁止逃避代码评审、私自合入未审核代码。
1、禁止主干分支直接开发、直接提交代码;

9.2 分支与提交红线

2、禁止乱建分支、违规命名、长期留存废弃分支;
3、禁止提交备注空白、混乱、无法追溯的无效提交;
4、禁止强制合并冲突、盲目覆盖代码导致逻辑丢失。

9.3 版本发布红线

1、禁止私自打包、私自发布、无测试上线、无备案上线;
2、禁止乱改版本号、跳号迭代、版本不归档;
3、禁止故障拖延不回滚、违规局部更新版本;
4、禁止重复发布问题版本、带病版本上线。

9.4 三级违规追责标准

1、轻微违规:代码轻微不规范、提交备注简略、分支命名不标准,无功能问题、无线上影响,予以口头提醒、现场整改、记录备案。
2、一般违规:多次规范违规、无效提交、分支混乱、合并不规范、测试带病打包,造成团队迭代效率下降、轻微返工,予以部门通报、绩效扣分、限期整改复盘。
3、严重违规:私自上线、违规合并代码、代码漏洞导致线上故障、拖延回滚造成业务损失、版本混乱无法溯源,予以双向追责、绩效重罚、取消年度评优、专项整改问责。

第十章 附则

1、本《飞蚕版本管理与代码规范管理制度V1.0》自发布之日起正式执行,公司原有代码规范、分支管理、版本发布、回滚相关零散规定、口头规则与本制度冲突的,以本文件为准。
2、本制度由研发部、技术负责人负责制度解读、落地督导、规范巡检、迭代优化,人力资源部负责考核监督与追责落地。
3、本制度与公司研发迭代、需求评审、项目管控制度全域联动,根据技术架构升级、团队迭代持续更新优化。
编制部门:研发部、产品部、人力资源部

审批人:______________
发布日期:______年____月____日
© 版权声明
飞蚕,也能展翅翱翔

相关文章

够优秀,你就来

暂无评论

none
暂无评论...