自动生成热更新包工作流使用教程
本目录用于自动生成 DLC 热更新包,并发布到 GitHub Release(可选同步到 Gitee)。
本文档仅支持 DLC Manager 3.6.5 及以上版本。
1. 准备
- 先基于模板创建你的整合包仓库:Github链接
- 确保
DLC/info/目录(也可手动指定位置,详见下方的VERSION_DC_PATH配置项)中有version.dc,用于记录当前base和dlc版本。 - 在
.gitignore文件中加入你需要排除检测更改的文件和目录(路径)。 - 可选:在仓库根目录放置
changelog/CHANGELOG(任意一个即可),内容将作为更新日志。
推荐:使用 GitHub Desktop
建议使用 GitHub Desktop 管理仓库。
操作步骤:
- 安装 GitHub Desktop 并登录 GitHub 账号。
- 在 GitHub Desktop 中打开你的整合包仓库(
File -> Add local repository...或直接Clone)。 - 后续照常在 GitHub Desktop 中提交/推送。
可选:启用 Git LFS(大文件)
如果仓库里包含大文件(100MB 以上,如 .jar、.zip),建议启用 Git LFS。
操作步骤:
- 打开仓库终端(
Repository -> Open in Terminal),执行:bashgit lfs install git lfs track "*.jar" git lfs track "*.zip" - 提交并推送自动生成的
.gitattributes文件。
注意:
- 新协作者首次拉取仓库后,建议执行一次
git lfs pull,确保本地拿到真实文件而非指针文件。
2. 自动生成热更新包
工作流:auto-generate-update-pack.yml
触发方式:
- 推送到
main自动触发。 - 也可手动运行。
自动模式会在检测到 version.dc 版本变化时生成热更新包;无版本变化则不生成。
Repository Variables
AUTO_UPDATE_WORKFLOW- 作用:是否启用 push 自动生成。
- 可选:
false/true - 默认:
true
VERSION_DC_PATH- 作用:指定
version.dc路径。 - 默认:
DLC/info/version.dc
- 作用:指定
CLIENT_BRANCH- 作用:自动模式下,匹配为客户端热更新包的分支名。
- 格式:多个分支名用逗号分隔,忽略大小写。
- 示例:
client,client-release,feature-client
SERVER_BRANCH- 作用:自动模式下,匹配为服务端热更新包的分支名。
- 格式:多个分支名用逗号分隔,忽略大小写。
- 示例:
server,server-release,feature-server
AUTO_UPDATE_PLATFORM- 作用:自动模式使用的平台。
- 可选:
universal/client/server - 默认:
universal
AUTO_SYNC_TO_GITEE- 作用:自动模式是否同步 Gitee。
- 可选:
false/true - 默认:
false
3. Gitee 同步
工作流:sync-github-release-to-gitee.yml
必填配置
Repository Variables:
GITEE_USERNAME:Gitee 用户名GITEE_REPO:Gitee 仓库名
Secrets:
GITEE_TOKEN:Gitee Access Token
4. 手动生成热更新包
工作流:generate-update-pack.yml
需要填写的参数:
from_ref:- 作用:对比起点(从哪里开始算改动)。
- 可填:tag / commit / branch。
- 可留空:系统自动选择合适起点。
to_ref:- 作用:对比终点(改动截至到哪里)。
- 可填:tag / commit / branch。
- 留空默认:当前最新提交(
HEAD)。
platform:- 作用:指定热更新包平台。
- 可选:
universal/client/server。
base:- 作用:更新前底包版本。
- 示例:
3.12.0
base_new:- 作用:更新后底包版本。
- 示例:
3.12.1
dlc:- 作用:更新前 DLC 版本。
- 示例:
1.0.0
dlc_new:- 作用:更新后 DLC 版本。
- 示例:
1.0.1
sync_to_gitee:- 作用:生成并发布到 GitHub 后,是否同步到 Gitee。
- 可选:
false/true
注意:
base/base_new和dlc/dlc_new不能同时不变,否则会直接报错退出。
from_ref / to_ref 填写说明
to_ref:- 一般留空即可,表示使用当前最新提交(
HEAD)。 - 需要指定时可填:分支名、tag、commit 哈希。
- 一般留空即可,表示使用当前最新提交(
from_ref:- 作用是指定“从哪个版本/提交开始对比”。
- 常见填法:
- 上一个热更新 tag(推荐)。
- 某个历史 commit(想只打某几次提交的改动时)。
- 某个分支或 tag 名。
- 留空时会自动选择可用的对比起点。