维护记录#
完成的工作#
- 同步远程
origin/master:本地分支落后 38 个 commit,git pull --ff-only 快进到 0a651bd(最新 commit: chore: auto-fix content) - 同步过程中 PaperMod 子模块一度处于"本地检出
154d006、父 gitlink 仍指向 d376885“的状态,git submodule update --remote themes/PaperMod 后回到与父一致(d376885,v8.0-139-gd376885) scripts/dist/ 出现未跟踪的 7 个 .js + 1 个 lib/ 子目录(应是 deno task 本地编译产物),未自动处理,留给用户决定
遇到的问题#
git status 首次显示 modified: themes/PaperMod (new commits) 容易误导 ⚠️ — 实际上工作树指向的 154d006 是 d376885 的父 commit,git 在子模块 diff 上不会区分新旧方向,只是机械显示 parent-track ↔ working-tree 差异;遇此情况应直接看 git submodule status 和子模块内 git log 判断git submodule update --remote 在本场景下表现为"撤销本地手动切出的旧 commit”,而不是真正的"升级到更新",因为 .gitmodules 把 PaperMod 默认分支 tip 钉到了 d376885
下次建议#
- 考虑把
scripts/dist/ 加进 .gitignore(deno 编译产物,7 个文件 ~38KB),或者在 deno.json 里把 dist/ 路径改掉避免误生成 - 想真正"升级 PaperMod"时,需要先在子模块内
git fetch + 找到上游新 commit,然后手动更新父 gitlink 并提交(不是 git submodule update --remote)
维护记录#
完成的工作#
- 回滚多语言支持:
git revert --no-edit 0a651bd 14732b2(newest first),生成 2 个反向 commit b821ed4 / e25a7cc - 删除全部 222 个
content/posts/*.zh-tw.md、16 个 content/claudelog/*.zh-tw.md、content/about.zh-tw.md / archives.zh-tw.md / search.zh-tw.md / posts/_index.zh-tw.md - 删除
i18n/zh-tw.yaml(从 PaperMod 主题复制的 UI 文案) hugo.toml 还原到 [languages] 块之前的状态:只剩 locale = "zh" + DefaultContentLanguage = "zh",中文菜单名(文章 / 维护日志 / 源代码 / 归档 / 搜索 / 标签 / 关于)保留- 当前
master 分支比 origin/master 领先 2 个 commit,等用户确认后再 push
- 选
git revert 而不是 git reset --hard + force push:前者保留远程 history 不破坏引用,后者会改写已发布 commit(14732b2 / 0a651bd 都在 origin/master 上),按 CLAUDE.md 属破坏性+对外可见操作需要额外确认
下次建议#
- 如果以后又想开 i18n,所有数据已经留在 commit
14732b2 里,可以直接 cherry-pick 或者 revert 这两个 revert commit 就能恢复 format-markdown.yml 推送时会自动跑 prettier,刚才新建的 claudelog 日志也会被自动格式化