版本号规则说明

随机抽取工具的每一次发布都用两套标识来标记:版本号(给人看)和版本代码 vercode(给程序比较)。更新程序并不解析版本号的文字,而是只比较版本代码的大小来判断有没有新版本。


一、版本号

版本号采用类似语义化版本的多段式写法,遇到测试版时在末尾追加 -beta 序号:

主版本.次版本[.热更新][.修订版][-beta序号]

2.4              正式版
2.4.1            正式版(热更新)
2.5.3-beta       测试版(正式版发布前)
2.5.3            正式版
2.5.3.1-beta     测试版(第一阶段)
2.5.3.1-beta2    测试版(第二阶段)
2.5.3.1          正式版(修订版)

V2.5.3.1 版本实际不存在。

由于开发 V2.5.3.1 过程中,更新内容较多,故直接发布了 V2.6 版本。

组成部分 含义 示例
主版本 发生大范围重构或大更新时递增 2.5.3
次版本 新增功能模块时递增 2.5.3
热更新 修复问题、优化体验时递增 2.5.3
修订号 在某个热更新之上继续开发 2.5.3.1
-beta 序号 测试版标记,可能分阶段 2.5.3.1-beta2

二、版本代码(vercode)

版本代码是一个单调递增的整数,由版本号的数字直接拼接而成。

在 V2.4 之前,版本代码为4位:

vercode = 主版本(1位) + 次版本(1位) + 热更新(1位) + 版本标识(1位)

自 V2.5 及以后,固定为 6 位:

vercode = 主版本(1位) + 次版本(1位) + 热更新(1位) + 修订号(1位) + 版本标识(1位) + 阶段(1位)
版本号 版本代码 拆解
2.52500002 | 5 | 0 | 0 | 0 | 0
2.5.12510002 | 5 | 1 | 0 | 0 | 0
2.5.22520002 | 5 | 2 | 0 | 0 | 0
2.5.3-beta2520312 | 5 | 2 | 0 | 3 | 1
2.5.32530002 | 5 | 3 | 0 | 0 | 0
2.5.3.1-beta2530312 | 5 | 3 | 0 | 3 | 1
2.5.3.1-beta22530322 | 5 | 3 | 0 | 3 | 2
2.5.3.12531002 | 5 | 3 | 1 | 0 | 0

详细说明:

例如:V2.5.3-beta的版本代码是252031,其中,2520 就代表上一个正式版是V2.5.2,3 表示是测试版,1 表示是第一阶段。


三、版本比较规则

更新程序(update.exe)与主程序的检测更新逻辑完全一致,均只做数值比较:

  1. 默认读取 metadata.json 中 version.vercode 作为远程版本代码。
  2. 若在配置中勾选了「接收测试版更新」,则再读取 preview.vercode,取两者中较大的一个作为远程版本。
  3. 仅当 远程版本代码 > 本地版本代码 时,才会提示发现新版本。

例如当前正式版 2.5.3 的版本代码是 253000,而测试版 2.5.3.1-beta2 是 253032。因此发布 2.5.3.1 正式版时,版本代码必须大于 253032,即 253100。


四、相关字段的位置

本地版本:src/core/info.py

rct_version = "2.5.3.1-beta2"   # 版本号
rct_vercode = 253032            # 版本代码
rct_date = "2026-09-12"         # 发布日期

主程序会把这三项显示在以下位置:

远程版本:metadata.json(仓库根目录)

{
    "version": {
        "version": "2.5.3",
        "date": "2026-09-06",
        "lastver": 252031,
        "vercode": 253000
    },
    "preview": {
        "version": "2.5.3.1-beta2",
        "date": "2026-09-12",
        "lastver": 253031,
        "vercode": 253032
    }
}
字段 说明
version当前正式版信息
preview当前测试版信息;没有测试版时可省略
*.version版本号
*.date发布日期
*.vercode版本代码,更新程序比较用的就是它
*.lastver上一个版本的版本代码,仅作记录,程序不读取

官网首页与下载页通过 js/getmeta.js 读取该文件,动态显示「最新版本」「发布日期」「最新测试版」等信息。


五、一些补充说明

  1. 对于 metadata.json:正式版填进 version,测试版填进 preview,并把上一个版本的版本代码写进 lastver。
  2. Git 标签使用 V<版本号>,例如 V2.5.3;安装包命名为 RandomCallTool_Setup_V<版本号>.exe,放在对应 Release 下。
  3. 在 版本更新记录 中登记版本时,给对应的 <div> 设置 id 为版本代码(供首页「查看更新日志」按钮定位)。例如:V2.5.3

返回帮助文档首页

© 2025~2026 ElofHew. All rights reserved.