学习资料版本控制分支策略.docxVIP

  • 0
  • 0
  • 约1.58万字
  • 约 35页
  • 2026-02-28 发布于广东
  • 举报

学习资料版本控制分支策略

1目标与原则

目标

说明

可回退

任意版本可在5min内完整还原

可并行

多位老师/多位技术同事同时迭代不冲突

可交付

任何“正式对外”的版本100%可追溯

自动化

编译/PDF/视频转码/上线尽量零手工

遵循原则:

主干永稳分支短暂小步合并标签明确一键发布

2分支模型总览

core/main(受保护)

3角色与权限

角色

权限

说明

Maintainer(课程总监)

core/main写

负责最终合并与打Tag

Author(主编)

develop、release写

日常内容迭代

Contributor(协作者)

feature/*写

临时任务或外包

Reviewer

全库读+PR审批

学科专家、质检

4分支详解

4.1core/main

生命周期:永久

说明:任何时候都等于“当前线上正式版”

规则:

仅接受--no-ff合并:release、hotfix

必须伴随语义化Tag(例:v3.2.1)

强制CI绿灯:PDF生成、视频转码、超链检查、OCR文字校对

4.2develop

生命周期:永久

说明:下一版本的“集成线”,日常内容迭代基于此分支

规则:

所有feature先合并到develop

每日自动构建nightly包供内部试用

禁止直接push,必须MR+CodeReview(内容校验)

4.3feature/*

命名:feature/{模块}-{简要描述},如feature/chem-lab

生命周期:短,1~5天

规则:

必须从最新develop切出

合并回develop后立刻删除远程分支

若需预览,用CI自动生成“体验包”并上传临时CDN

4.4release/vX.Y.Z

创建时机:develop达到预定里程碑,PM发起

生命周期:1周左右

工作清单(Checklist):

版本号冻结

元数据补全:ISBN、目录、适用教材大纲版本号

全面校对(文字、公式、音视频音画同步)

多语言/无障碍PDF导出

生成CHANGELOG

结束方式:合并到core/main+打Tag;再合并回develop

4.5hotfix/*

命名:hotfix/{ISSUE-ID}-{简述},如hotfix/4823-fix-quiz4-answer

生命周期:2天

规则:

必须从core/main最新Tag切出

同时合并到core/main与develop

必须升级补丁号(Patch)

5提交信息规范(ConventionalCommit)

常用type:

feat:新增章节/视频/习题

fix:勘误、答案、音视频时长

docs:元数据、README、教案说明

style:排版、字号、LaTeX格式

refactor:内容重构无外部差异

test:新增单元测试、自动化脚本

chore:构建脚本、CI、依赖升级

示例:

fix(quiz):修正第3章选择题4答案

将C改为D

同步更新了解析音频

Closes#4823

6Tag与版本号策略

采用语义化版本MAJOR

MAJOR:课程结构/章节大改或增加毕业学分

MINOR:新增实验、小节、视频,向下兼容

PATCH:勘误、字幕修正、压缩包重打包

标记命令:

7CI/CD自动化脚本要点

触发事件

任务

PR到release/*

全量PDF/HTML生成、字幕对齐、多语言对比、OCR文字比对

Tagpushv*

自动上传官网/学伴APP、发送邮件通知、更新CDN缓存

8大型二进制文件处理

视频、3D模型50MB使用GitLFS

tes示例:

*4filter=lfsdiff=lfsmerge=lfs-text

filter=lfsdiff=lfsmerge=lfs-text

LFS配额报警:每日CI检测仓库体积,2GB提示归档

9协作流程速查表

接到新任务→从最新develop创建feature分支

本地编辑/引用素材→每完成一小节即commit

推送→创建MergeRequest→指派Reviewer

Review通过→Maintainer合并→删除feature分支

到达里程碑→从develop创建release分支→集中校对

完成→合并到core/main→打Tag→自动上线

线上紧急Bug→从core/main切hotfix→修复→合并→发补丁公告

10异常处理指引

场景

操作建议

develop历史被

文档评论(0)

1亿VIP精品文档

相关文档