跳转到内容

pch_system-v0.8.2

← 返回更新日志


游戏端 · 2026-07-25

重要更新(部署脚本热修):修复 .env 已含全部所需键时 Scripts/update.sh 拉取新代码后静默退出、跳过后续部署步骤的问题。此前已运行过更新脚本但疑似未跑完的实例,请按下方「升级指引」重跑一次。

  • 更新脚本半途中断:当 .env 已补齐所有所需键时,Scripts/update.sh 会在拉取新版代码后立即静默退出,跳过容器重建、数据库迁移、前端构建与部署记录刷新,实例卡在「代码已新版、容器与迁移仍停留旧版」的半途中断状态。现已修复,更新可一次跑完全流程。
  • 版本号元数据McdrPlugin/mcdreforged.plugin.jsonversion 由 0.8.1 补齐为 0.8.2(与发版线一致);archive_name: pch_system-v{version} 按 plugin.json 的 version 打包,漏改会使 v0.8.2 的 .mcdr 产物误命名(首次发版曾产出 pch_system-v0.8.1.mcdr)。
  • 已处于半途中断状态的实例.env 无缺键,上一轮卡在拉取代码之后):不能直接重跑 bash Scripts/update.sh——当前磁盘上的 update.sh 仍是旧的有 bug 版本(修复在 v0.8.2 才进入),bash 启动时已把有 bug 的 ensure_env_keys_update 读入内存,do_checkout 改磁盘不会重载内存函数,重跑仍会在同一处中断;且即便先手动切到 v0.8.2 再无参重跑,fetch_and_compare 会因工作树 HEAD 已等于最新 tag 而 exit 0,跳过迁移与重建。

    正确做法是先把工作树切到 v0.8.2(让 bash 读到修复版脚本),再用 --no-sync 跳过 fetch/checkout、直接补齐后续步骤

    Terminal window
    git fetch --all --tags
    git checkout pch_system-v0.8.2
    bash Scripts/update.sh --no-sync

    --no-sync 用部署记录(仍停在中断前的旧版本)作 diff 基准,正确识别「代码已新版、容器与迁移仍滞后」,按需执行容器重建 / 数据库迁移 / 前端构建 / MCDR 更新,并在 verify_and_summary 把部署记录推进到 v0.8.2。若工作区存在本地改动,脚本自带的 dirty 保护会先提示并拒绝运行,按提示处理后再重跑即可。