1.4 KiB
1.4 KiB
A_Memorix 子模块维护说明(维护者内部文档)
本文档用于维护者,不面向普通用户。
1. 基本约束
- 子模块路径固定:
plugins/A_memorix - 子模块仓库固定:
https://github.com/A-Dawn/A_memorix.git - 子模块分支固定:
MaiBot_branch - 强约束:主仓内
plugins/A_memorix指针必须等于远端origin/MaiBot_branch最新 HEAD
2. 首次拉取/恢复子模块
git submodule update --init --recursive
若目录为空或缺少 _manifest.json,先执行上面的命令再排查其他问题。
3. 维护者更新流程
- 先在外部仓
MaiBot_branch完成目标功能合入。 - 在主仓执行:
git submodule update --remote --recursive plugins/A_memorix
git add plugins/A_memorix .gitmodules
git commit -m "chore(submodule): bump A_memorix"
4. CI 严格校验说明
- PR Precheck 会校验:
.gitmodules的 path/url/branch 必须匹配固定值- 子模块指针必须等于远端
MaiBot_branch最新 HEAD
- Docker 构建工作流在构建前也会执行同样的 fail-fast 对齐检查
5. 回滚策略
- 回滚主仓提交会同时回滚子模块指针。
- 但若回滚后的指针不再是远端
MaiBot_branch最新 HEAD,CI 会阻断。 - 处理方式:
- 先在外部仓移动/回滚
MaiBot_branch到目标提交,再重跑; - 或按团队流程申请一次性 CI 豁免。
- 先在外部仓移动/回滚