209021e7d2
- 新增 development/iterations/iteration-1/:15 份角色报告 + 进展看板(已完成/未闭环/下一步),作为双人协作的进度事实来源 - 新增 ADR-006:测试与交付容器化策略(Testcontainers / 交付 Docker 包 / 本机库仅个人联调) - Git 工作流规范补充:敏感信息只进忽略文件或 sample、测试数据不入库、测试代码限标准测试目录 - 门禁:mkdocs build --strict 通过(零警告)
68 lines
4.5 KiB
Markdown
68 lines
4.5 KiB
Markdown
# 15 Git 收尾与工作流建章报告
|
||
|
||
- 执行人:Git Workflow Master
|
||
- 日期:2026-09-04
|
||
- 范围:patbond-flutter / patbond-api 两笔功能提交 + patbond-doc 工作流规范一笔提交。**三仓均只 commit 未 push**(推送由用户执行),各仓本地领先 origin 1 个提交。
|
||
|
||
---
|
||
|
||
## 1. 提交一:patbond-flutter `af002ed`(dev)
|
||
|
||
`feat: 迁移珊瑚橙主题体系并新增认证基础组件(ADR-005)`
|
||
|
||
**提交前门禁实跑(2026-09-04,非转述)**:
|
||
|
||
```text
|
||
dart format --output=none --set-exit-if-changed lib test → Formatted 22 files (0 changed),exit 0
|
||
flutter analyze → No issues found! (ran in 1.1s)
|
||
flutter test → 00:02 +7: All tests passed!
|
||
```
|
||
|
||
**git show --stat 核对**:13 files changed, +500/-49,与 14 号档案 3.3 节清单逐一一致——
|
||
|
||
- M ×6:`lib/core/theme/app_theme.dart`(+126 段主题重写)、create/home/pets/profile 四页 + `lib/widgets/common.dart`(token 替换)
|
||
- A ×7:`lib/core/widgets/` 下 app_text_field / auth_scaffold / brand_mark / inline_error_banner / primary_button 五组件 + `test/core/widgets/` 两个测试文件
|
||
- **README.md 未入库**(用户自有改动,保持 ` M` 未提交状态,由用户自决)
|
||
|
||
## 2. 提交二:patbond-api `bd20adc`(dev)
|
||
|
||
`feat: 用户 UUID 持久化与统一异常契约(Flyway baseline / UUIDv7 / 错误码透传)`
|
||
|
||
**提交前门禁实跑**:`JAVA_HOME=/usr/lib/jvm/java-17-openjdk ./mvnw clean test` → **BUILD SUCCESS**,四模块(patbond-api 聚合 / common / user / auth)全部 SUCCESS,合计 37 测试 0 失败 0 错误(含 Testcontainers postgres:16 集成测试,auth 末段 12 测试输出留档于会话)。总耗时 25.5s。
|
||
|
||
**入库前卫生核对**:`git status --ignored` 确认 `.idea/`、`patbond-{user,auth}/src/main/resources/application.yml`(本地真实配置)、三个 `target/` 全部为 `!!` 忽略态,未入暂存区;配置仅 `application.yml.sample` 入库。
|
||
|
||
**git show --stat 核对**:28 files changed, +1265/-158,与 10 号报告改动面完全吻合——
|
||
|
||
- A ×14:`V1__identity_media_baseline.sql`(277 行)、`db/dev/afterMigrate__dev_seed.sql`、UserRepository、UuidV7(+测试)、ErrorCode/BusinessException、两个 GlobalExceptionHandler、ApiErrorDecoder/FeignConfig(+测试)、TestcontainersConfiguration、UserPersistenceIntegrationTest
|
||
- M ×14:Readme、user pom(jdbc/flyway/pg/testcontainers 依赖)、UserService/UserController、三个 common DTO、auth 的 DTO/Service、application.yml.sample、既有测试改写
|
||
|
||
## 3. 提交三:patbond-doc `027876a`(main)
|
||
|
||
`docs: 增加 Git 工作流规范`
|
||
|
||
- 新增 `docs/development/git-workflow.md`(43 行),`mkdocs.yml` 导航挂到「开发文档」组下(+1 行)。
|
||
- **门禁实跑**:`mkdocs build --strict -d <scratchpad>` → exit 0,零 warning,产物写入会话 scratchpad,仓库内无 site/。
|
||
- git show --stat:2 files changed, +44。
|
||
|
||
**规范要点**(一页以内,可执行):
|
||
|
||
1. **分支模型**:api/flutter 以 dev 为集成分支、小步直提;doc 直提 main;跨多天/破坏性/多人并行时才开短命 `feat|fix/<主题>` 分支。
|
||
2. **提交信息**:中文 + `feat/fix/refactor/docs/test/chore` 前缀;正文列表写验收证据(门禁输出结论);引用 ADR 编号的既有惯例成文固化,附真实示例。
|
||
3. **禁止事项**:敏感配置/构建产物不入库(提交前核对暂存清单);共享分支不 force push(个人分支用 `--force-with-lease`);**已推送 Flyway 迁移不可变、只增不改**(呼应开发计划 4.3);不改写已推送历史。
|
||
4. **CI 衔接**:按仓库分列提交前必跑命令表(api:`JAVA_HOME=jdk17 ./mvnw clean test`;flutter 三命令;doc:`mkdocs build --strict`),未来 CI 载体(审计 M3 后半)原样采用。
|
||
|
||
## 4. 三仓最终 git status
|
||
|
||
| 仓库 | 分支 | 相对 origin | 工作区 |
|
||
| --- | --- | --- | --- |
|
||
| patbond-api | dev | **领先 1**(`bd20adc`) | 干净 |
|
||
| patbond-flutter | dev | **领先 1**(`af002ed`) | 仅 ` M README.md`(按约保留给用户) |
|
||
| patbond-doc | main | **领先 1**(`027876a`) | 干净 |
|
||
|
||
## 5. 卫生留痕
|
||
|
||
- 未执行任何 push;未动三仓之外的文件(本报告除外)。
|
||
- Maven `target/` 已 `./mvnw clean` 清除;`docker ps` 无遗留容器(Testcontainers/ryuk 自动回收);mkdocs 产物在 scratchpad;无后台进程遗留。
|
||
- 待用户动作:三仓各 push 一次;patbond-flutter README.md 自决(建议顺手补 m2 的 `--output=none` 一并单独提交)。
|