C 端代码同步说明 · 给小齐

波波 2026-10-08 23:25。义父问「小齐拉不到波波本地这个版本的 C 端」,
我实机查了远端与本机副本,结论如下。

一、结论先说:C 端代码在远端,main 上是全的

远端 main = e7687726(已用 git ls-remote 核实,不是本地缓存)
miniprogram-v3 文件数 = 456 个

⇒ 不是「拉不到」,是「他那份副本的两个障碍挡住了」。

二、他的两个障碍(实机查证)

🔴 障碍①:xiaoqi/v3-sync 在远端不存在

远端现有 7 个分支,没有他那个:

SHA分支
e7687726main ← 义父要的
58af1a59xiaoqi/a-console-rebuild ✅ 还在
70238d09bobo/v3-c-takeover
5bcbcbdcbobo/redesign-20261002
04ae8126release/mvp-v3(09-27 旧快照,早废了)
edcbcb48release/v3-submit-20260928
c63c8c03v4-design

他报告里的 xiaoqi/v3-sync(本地 c5657a5e):

🔴 障碍②:他工作树有 16 项未提交

git pull 在工作树脏时会被 Git 直接拒绝(除非 stash)。

三、给他的安全命令(分两种需求)

A. 只想看最新的 C 端(不动他的 16 项,推荐先这样)

cd <他的 kailash-xiaoqi>

# ① 只更新远端引用,不动工作树
git fetch origin main

# ② 验证 C 端齐全(应输出 456)
git ls-tree -r --name-only origin/main -- miniprogram-v3/ | wc -l

# ③ 看分包配置(应看到 "subPackages" 大写 P)
git show origin/main:miniprogram-v3/app.json | grep -E '"[Ss]ub[Pp]ackages"'

# ④ 直接看某个文件的最新内容,例如今天修的分包键名
git show origin/main:miniprogram-v3/app.json | head -30

B. 要真正切到最新 main(会动工作树,先保住未提交)

git stash push -u -m "wip-before-sync-20261008"   # 先保 16 项
git pull --ff-only origin main                     # 只快进,不产生 merge 提交
# 万一出问题:git stash pop

四、⚠️ 他之前读到「29 页无分包」的成因(已定位)

他查的是 /srv/kailash/repo 的 2ce19852(10-06)——

那条链从未碰过 app.json,继承的是 10-04 的 29 页旧形态。

🔴 该服务器 repo 当时落后 main 119 个提交(我 22:21 只 fetch 没 pull)。

23:17 我已 git pull --ff-only 修好,现在服务器上也是:

主包 18 + subPackages 4+7 = 11 页  ✅

⇒ 他那个「29 页」的问题已消失,不必再查。

五、⚠️ 关于他报告里那个「page not found」

不是路径写错。是 app.json 把 subPackages 拼成了 subpackages(小写 p),

微信解析器不认 ⇒ 11 个分包页从未被注册(10-05 引入,10-08 22:27 修好)。

🔴 这个坑的特征:JSON 合法、编译不报错、文件全在,只有机器查键名才能发现。

已加门禁:scripts/check_app_json_pages.py。

六、诚实说明两点

项性质
「11 页从未注册」✅ 真机实测(改前 0 个能开,改后 11 个全通)
「主包 0.902MB」⚠️ 文件系统求和(上界),不是真打包

835fa9c5 那个「主包 1.082→0.925MB」同样是推算 ⇒ 那个降体积数字是假的。

方向性结论仍成立(距2MB 余 1.10MB),但精确数字要真打包(cli preview)。