下载 App
:
一、存档丢失的恢复方法(取决于存档架构)
先问清:存档是纯本地文件、本地+云备份,还是纯云变量?不同架构恢复路径完全不同:
1. 有 clientCloud 云存档 → 最有希望
只要 bug 没有把云端也覆盖/删除,旧档还在云上。让玩家用同一 TapTap 账号重新登录,用 clientCloud:Get("对应key") 读回即可。
关键动作:立刻停止游戏继续落盘,防止新版错误数据把云端旧档覆盖(很多"丢档"其实是覆盖,不是删除)。
可在开发者后台查云变量数据,确认云端最近写入时间(savedAt)是否在 bug 之前。
2. 纯本地 File 存档
如果做了 .bak/双缓冲,主文件坏了备份还在,读取时自动回退。
如果没做备份:看 bug 是"删除"还是"覆盖为默认值"。覆盖型的话,写盘前的旧文件已被 Rename/Delete 干掉,基本不可恢复。
WASM/Web 平台要注意:savedata 存在内存文件系统,刷新即丢,这种情况本来就没有恢复余地——所以 Web 游戏必须用 clientCloud 持久化。
3. 服务端存档(ServerCloud / DB)
服务端本身有存档历史/DB 快照的话,直接让运维从数据库恢复,这是最稳的一层。
通用预防建议(如果这次恢复不了,下次别再丢):
原子写:先写 .tmp → 校验 JSON 合法 → 再替换主文件,避免半写损坏;
保留上一版 .bak,读主文件失败自动回退;
加载失败时禁止全量覆盖写——这是"默认值冲掉真实存档"最常见的丢档链路;
本地 + 云双轨,云作为跨设备/灾难备份;
存档里带版本号和 savedAt,结构变更做迁移而不是直接重置。
云部署失败代码提交不了
云部署这一步卡在 Maker 远端同步上了,不是本地代码问题。重试了两次 taptap-maker build,结果完全一样,remote_build_status: not_started。
关键证据(failure 原文):
阶段 remote_sync,命令 git fetch origin,exit_code: 128,stderr: fatal: expected 'acknowledg

:
你把这个发给AI:
根因是本地 .git/shallow 留有冗余浅克隆标记。Git 因此在 fetch 请求里带上 shallow 行,Maker 网关处理这类请求时断开连接,客户端收不到预期的 acknowledgments 响应,于是报错。
























