2.3 KiB
2.3 KiB
发布与更新(轻量版)
应用内「检查更新」按钮(顶栏右上角)走轻量版本检查:查询 Gitea 最新 release,与当前版本号比较,有新版则弹窗显示发布说明并提供「前往下载」。不做签名校验、不在应用内静默安装——用户下载安装包后手动运行覆盖安装。
工作原理
- 检查接口(硬编码于
src-tauri/src/main.rs的GITEA_LATEST_RELEASE_API):http://gitea.xxhhcty.xyz:8080/api/v1/repos/zcdsj/tcjs/releases/latest - 当前版本取自
src-tauri/tauri.conf.json的version(app.package_info().version)。 - 比较规则:release 的
tag_name(去掉前导v/V)按点分十进制与当前版本比大小。 - 「前往下载」打开 release 资产里第一个
.exe/.msi,没有资产则打开 release 页面。
发布一个新版本
- 改版本号:编辑
src-tauri/tauri.conf.json的version(如0.1.0→0.2.0)。建议同步package.json、src-tauri/Cargo.toml,保持一致。 - 构建安装包:
npm run tauri:build产物在src-tauri/target/release/bundle/:nsis/*.exe(推荐发布这个)msi/*.msi
- 在 Gitea 建 release:
- 仓库
zcdsj/tcjs→ Releases → New Release。 - Tag 用
v0.2.0(与第 1 步版本一致;检查时会去掉前导v)。 - 把第 2 步的
.exe(和/或.msi)作为附件上传。 - release 正文(body)会作为「发布说明」显示在更新弹窗里,写更新内容即可。
- 发布(标记为最新 release)。
- 仓库
- 旧版本用户点「检查更新」→ 发现
v0.2.0比本地新 → 弹窗 → 「前往下载」→ 下载安装包覆盖安装。
备注 / 后续可选
- HTTP 站点:当前 ureq 关闭了 TLS(Gitea 走 http)。若 Gitea 迁到 https,需要给
src-tauri/Cargo.toml的ureq打开tls(rustls)特性。 - 改成静默自动更新:若以后要"应用内下载+安装+重启",可切换到官方
tauri-plugin-updater(需生成签名密钥、构建时签名、每次发布额外上传latest.json与.sig)。本版刻意不做以保持轻量。 - API 私有仓库:若仓库非公开,Gitea API 需要 token;当前实现按公开仓库匿名访问。