下载 App
10/2310 浏览
工单:Maker 云端工作区卡在「staged 但无法 commit」状态
提交对象:TapTap Maker 官方支持 整理时间:2026-10-23 19:20(UTC+8) 状态:本地代码完好,仅推送受阻


标题
【故障】Maker 云端仓库拒绝推送:GIT_COMMIT_CONFLICT: Commit refused: staged(持续 14 小时)


基础信息
| 项 | 值 |
|---|---|
| 游戏 | 小镇小说家 |
| app_id | 983404 |
| project_id | 2e257a48-b6e3-4864-84be-d0dfe59e7237 |
| developer_id | 492926 |
| 分支 | main |
| 远端 HEAD | ac795fa(2026-10-23 05:34 之后无任何提交) |
| 本地 HEAD | 516f7c0,ahead 22 / behind 0 |


现象
本地执行 Maker 提交流程(MCP maker_build / CLI taptap-maker build / 控制台「远端构建」按钮,三条入口结果一致), 在 push 阶段被远端拒绝:
To https://maker.taptap.cn/git/2e257a48-b6e3-4864-84be-d0dfe59e7237.git
! [remote rejected] HEAD -> main (Working directory has unstaged changes)
error: failed to push some refs to 'https://maker.taptap.cn/git/2e257a48-....git'
用 @taptap/maker@0.0.38 重试后,新版会自动尝试提交云端工作区的改动,但服务端返回:
classification: cloud_workspace_blocked
HTTP 409 GIT_COMMIT_CONFLICT: Commit refused: staged
远端拒绝推送:云端工作区有未提交改动,自动提交云端改动失败
(云端仓库当前不能提交:HEAD 已变化 / 云端存在暂存区内容 /
有未完成的 Git 操作 / 项目繁忙)
即:云端仓库处于「有暂存内容但 commit 被拒绝」的状态,客户端无法解除。 报错文字在 staged 与 unstaged 之间反复变化,说明服务端那份工作副本一直在被改动但始终没能提交。


本地侧已确认正常
| 检查 | 结果 |
|---|---|
| git status | 干净,无未提交修改 |
| git rev-list --left-right --count origin/main...HEAD | 0 22(behind 0) |
| git ls-remote origin main | ac795fa...,与本地记录一致(远端确实没有新提交) |
| 静态门禁 | 29 项全绿 |
| 本地预览 | 可启动进程(本机 Runtime 存在独立的原生崩溃问题,与本工单无关) |


已尝试且无效(14 类)
- 反复重试推送(20+ 次,跨 14 小时),错误恒等
- git fetch + git rebase origin/main(up to date)
- git ls-remote 直连服务器核对远端 HEAD(确认无新提交)
- 关闭全部 Maker 网页端后重试
- 关闭浏览器中全部 11 个 TapTap / Maker 标签页后重试
- 重开 Maker 控制台
- 控制台内「安全拉取」,成功拉取 196 个远端提交后重推
- 在独立 clone 中拉取全量远端历史后再推
- CLI taptap-maker build(0.0.34 / 0.0.37)
- CLI taptap-maker build(0.0.38,含云端改动自动提交修复),3 次
- 控制台「远端构建」按钮
- MCP maker_build
- 清理本地未跟踪目录(.tmp 449MB / .maker / .maker-preview)后重试
- 修复 .gitignore 的本地/远端差异


时间线
| 时间(UTC+8) | 事件 |
|---|---|
| 10-23 05:34 | 平台最后一次 [sync] 提交,此后远端再无提交 |
| 05:34 起 | 客户端所有 push 全部被拒,错误恒等 |
| 全天 | 上述 14 类尝试,均无效 |
| 19:20 | 用 0.0.38 重试,得到 409 GIT_COMMIT_CONFLICT: Commit refused: staged |


诉求
- 清理该仓库服务端工作副本中未提交 / 已暂存的改动,或重置远端仓库工作区状态
- 使后续 push 可以正常落库
- 如服务端存在未完成的 Git 操作(merge / rebase / cherry-pick),请一并终止


补充
- 该状态已阻塞 22 个已完成的本地提交上线,本地代码与校验均正常,仅无法送达服务端
- 0.0.38 的「云端改动自动提交」修复方向是对的,但服务端拒绝了这次 commit, 建议排查该仓库服务端工作副本为何处于 staged 且不可提交(是否被某个并发会话占用)


追加排查(2026-10-23 19:40):客户端已无任何可用入口
试图自行修复,逐个探测了 0.0.38 的客户端能力,结论是没有能提交远端工作区的入口:
| 探测对象 | 结果 |
|---|---|
| @taptap/maker@0.0.38 MCP 工具表 | 19 个工具,无任何 git / commit / diff 工具 |
| 0.0.38 控制台 HTTP API | 只有 /api/projects/<key>/git?skip=(历史)、/git/<hash>(单提交状态与 diff)、/git/pull(拉取远端到本地) |
| /git/commit /git/sync /git/push /git/fix /git/repair | 全部落到 /git/<hash> 路由,无对应端点 |
| 0.0.38 构建流程内置的「云端改动自动提交」 | 已尝试,服务端返回 409 GIT_COMMIT_CONFLICT: Commit refused: staged |
即:唯一能写远端工作区的代码路径就是 0.0.38 构建时的自动提交,而它被服务端 409 拒绝。 客户端侧不存在可以手动触发该提交的接口。
另:从远端历史看,故障起点可精确定位到 2026-10-23 05:34:02(ac795fa)。 在此之前 4 分钟内平台连发 6 个 [sync] 提交,每个只改 .project/project.json,改动行数在 1/3/4 行之间反复跳动, 随后停止,工作副本残留 staged 内容 → 预接收钩子从此拒绝一切 push。












