为什么要这张表:微信后台的版本号(3.6.0)只存在腾讯那边,
git 里没有任何地方记录「这一版是从哪个 commit 打的」。
⇒ 上传后没人能回答「线上那个 1.2.3 到底包含了哪些改动」。
这张表就是补这个缺口。
| 线上版本号 | 对应 commit | 上传时间 | 包含什么 |
|---|---|---|---|
3.7.0 | 86d4174b(本机 HEAD 核对:工作树干净、behind 2 未拉的 fc5ab2b8/a19f2518 域模型不在包内) | 2026-10-23 23:3x(义父上传) | 见下 |
3.6.0 | 45334930(C 端最后一个改动提交) | 2026-10-08 21:20:58 | 见下 |
上传打包的是工作树状态 = 本机 HEAD 86d4174b(工作树干净,behind 2 未拉的
fc5ab2b8/a19f2518 域模型是 23:00 后同事新提交,不在包内)。
| commit | 内容 |
|---|---|
b27fac98 | 扩散三层:首页内容流(content-feed 组件)+ 文章页转化尾(相关阅读+订阅) |
ceb85a85 | 文章页全面优化:导语/图注/meta 行/去伪目录/分享卡 |
9953d758 | 修 guides.hook 误当文案(4 处)+ 8 篇导语补齐 + 语义守卫脚本 |
a600f30f | 联系条 inline/bar 两形态 flex 破版修复 |
a48b70ca | UI/UX 全量走查修复:文章页 HTML 守卫(6 篇裸标签事故)+ product-detail 底栏三行化(主 CTA 曾挤出屏外)+ selection 吸底条遮挡 + journey 空态出口 + 向导首字徽章 + passport 内部口径 + fleet-route 英文外抛 + 铜铃分类数据修正 |
148274cd | 文案删减(GPT6 审定):删引导套话 3 处缩操作规则 10 处,钱/凭证/核销留完整短句 |
2305757d | FAQ 按页类目过滤:住宿问答不再错位出现在玩法页 |
52acfe7f | 客服拿号补挂剩余 3 处(f-concierge-bar 双按钮 + profile 统一 promptAfterChat),18 处客服入口全挂完 |
86d4174b | 文案复查:清 170 条死文案 + 护照宫格补八寺方位小字 + 空态改口 + local 页开发黑话清理 |
3.7.0 依赖提醒:
2a13f59f)与后端 ≥b7ef96a4(已部署)。v3.subscribeTemplates.contentUpdate 填了真实模板 ID 才露出(义父申请模板中)。detail.home.contentFeed 配置驱动(prod 已预置 enable:true)。判据:C 端文件的 mtime 全部早于 21:20:58 ⇒ 打包时它们就是工作树里的当前内容。
再把工作树内容与各 commit 里的 blob 比 sha256:
| 文件 | mtime | 工作树 = commit | 属于 |
|---|---|---|---|
pages/item-detail/item-detail.ts | 19:44 | = 45334930 | 修「模块读不到 / 全变到店选购」 |
detail-render/normalize.ts | 19:29 | = 8f539ede | 删编造兜底文案 |
pages/product-detail/product-detail.ts | 19:33 | = 8f539ede | 情报包不显示 1晚 / needsStay |
pages/shop/shop.ts | 14:02 | = 48ea3915 | 「到店选购」角标 |
⇒ 3.6.0 包含了今晚 12:00–19:48 的全部 C 端修复。
🔴 修正一条此前的错误推断:我曾按「提交时间 > 上传时间」推断「3.6.0 里应该没有今晚的修复」——
推错了。上传打包的是工作树当前状态,不是「某个 commit 的快照」;
只要文件在打包前已改好,就都在包里。判断依据是 mtime,不是 commit 时间。
| 内容 | commit | 时间 | 说明 |
|---|---|---|---|
| 小程序版本号功能 | 5299c227 | 22:11 | 晚于 21:20 ⇒ 要下次上传才生效 |
所以现在还不能在「我的」页看到 正式版 v3.6.0 —— 版本号功能自己还没上线。
两步骤,缺一不可:
① 看文件 mtime(决定「在不在包里」)
# macOS
stat -f '%Sm' -t '%Y-%m-%d %H:%M:%S' miniprogram-v3/pages/product-detail/product-detail.ts
# Linux
stat -c '%y' miniprogram-v3/pages/product-detail/product-detail.ts
mtime 早于上传时点 ⇒ 该文件在包里。
② 比 sha256(决定「等于哪个 commit」)
f=miniprogram-v3/pages/item-detail/item-detail.ts
shasum -a 256 "$f" | cut -c1-16 # 工作树
git show HEAD:"$f" | shasum -a 256 | cut -c1-16# HEAD 里的同一文件
两个值一致 ⇒ 工作树还没被改动过;不一致则用 git log 逐个 commit 试。
🔴 别用 commit 时间倒推(我 22:19 踩过,推错了):
打包的是工作树当前状态,不是某个 commit 的快照;
commit 时间只说明「什么时候写进 git」,与包内容无关。
已加的 miniprogram-v3/utils/app-version.ts 读 wx.getAccountInfoSync().miniProgram:
| 环境 | envVersion | 页面显示 |
|---|---|---|
| 正式版 | release | 正式版 v3.6.0 |
| 体验版 | trial | 体验版 v3.6.0 |
| 开发者工具 | develop | 开发版(此环境不带版本号) |
| 真机预览 | — | 取决于微信是否填号 |
🔴 这个号是微信标的,不是我们自填的 ⇒ 它一定等于真实在跑的包。
(自填版本号只能证明「我们希望它是这版」,不能证明它就是。)
位置:「我的」页底部,服务协议下方,20rpx 淡灰,点击可复制。
git log -1 记下 commit SHA,填进本表git push 与后端 deploy.sh 都改不到它。