ZVM 特性:交付式版本管理
01 背景:从学术创新到工程交付
ZVM 项目自 2021 年启动研发以来,坚持以开源方式推进技术演进,目前已形成多款稳定运行的基础发行版,并在此基础上持续向不同甲方交付定制化版本。随着研发周期拉长、功能模块不断丰富,以及参与研发的教师、博士、硕士、本科生和工程师数量持续增加,ZVM 的代码版本数量与复杂度迅速上升。 在这种背景下,如何同时满足多人并行开发的灵活性、基础发行版的长期稳定性以及交付版本的可靠性,成为 ZVM 工程实践中必须正面解决的问题。为应对上述挑战,团队逐步建立并完善了一套明确、可执行的版本管理机制,对不同用途、不同稳定级别的代码进行分层管理,从制度层面保证 ZVM 的研发效率与交付质量。
02 版本划分:个人、基础与交付
ZVM 建立了明确的三层版本管理机制,对不同用途、不同稳定级别的代码进行分层管理:
1. 个人开发版
维护在个人私有仓库,用于日常研发、功能探索与前沿方案尝试,不设统一规范,鼓励创新自由。
2. 基础发行版
团队共同维护的稳定基线。目前已形成针对 RK3588、E2000、D2000 和 D3000 的四大核心发行版。
3. 交付版
面向甲方具体需求,在基础版之上进行增量集成。以项目满足度为目标,不反向影响发行版稳定性。
03 基础发行版的五大核心模块
尽管不同基础发行版在平台和应用场景上有所差异,但团队明确规定,五大核心模块必须在所有基础发行版中保持一致并长期稳定。这五大核心模块包括:
注:这些模块被视为 ZVM 的“核心课程”,任何演进必须以不破坏其稳定性为最高前提。
04 基础发行版的版本控制与测试机制
基础发行版的每一次代码合入都必须经过“模块负责人审批”与“多平台闭环测试”的双重验证:
变更申请
开发者需提前通知五大核心模块的负责人,确保变更符合架构演进方向。
全平台测试
功能需在 RK3588 / E2000 / D2000 / D3000 四大平台同步验证,确保兼容性。
纸质存证
在实验室完成测试并填写纸质测试记录表,由各模块负责人亲笔签字确认。
合入审批
通过 Gitee 提交 PR,由项目总负责人进行最终代码审查与分支合并。
审计提示: 所有的测试记录均存档于研发中心,支持对每一行合入代码的质量溯源。
图3. ZVM 研发测试记录表 (部分)
图4. ZVM 实验室真实硬件测试环境
05 交付版的管理原则
交付版同样建立在基础发行版之上,但其管理原则与基础发行版保持一致。交付版可以根据甲方需求引入特定功能,例如在 ZVM-D3000 基础发行版上增加并交付 SR-IOV 功能。但这类功能如果不属于五大核心模块,就不会被反向集成到其他基础发行版中。
与基础发行版相同,交付版在功能集成完成后,也必须对五大核心模块进行完整测试,并由对应模块负责人确认测试结果,确保定制功能不会对 ZVM 的核心能力产生影响。通过这种方式,团队在满足定制需求的同时,依然能够保持整体技术体系的稳定性。
总结
“ZVM 通过三层版本管理体系,在尊重个人创新灵活性与满足甲方定制化需求的同时,确保了核心基石的确定性。这套‘制度驱动研发’的体系,为 ZVM 的长期演进和工程化高质量交付提供了最坚实的保障。”
扫码查看视频介绍
小红书视频
微信视频号/公众号