1
0
mirror of synced 2026-05-22 14:43:15 +00:00
Files
Sa-Token/.cursor/skills/organize-update-log/SKILL.md
T

124 lines
4.2 KiB
Markdown
Raw Normal View History

---
name: organize-update-log
description: 根据 git 提交记录生成符合 Sa-Token 项目规范的更新日志内容。适用于分析指定版本之后的提交、提取变更并格式化为 update-log.md 风格。当用户需要生成更新日志、整理版本变更、或分析 release 之后的提交时使用。
---
# 整理更新日志
根据 git 提交记录,生成符合 `sa-token-doc/more/update-log.md` 格式的更新日志内容。
## 使用时机
- 用户要求生成/整理更新日志
- 用户要求分析「某版本之后」的提交变更
- 用户要求将 git 提交格式化为更新日志风格
- 准备发布新版本前整理 changelog
## 工作流程
### 第一步:确定基准版本
1. 询问用户基准版本(如 `v1.44.0`),或从上下文推断
2. 查找该版本的发布提交:
-`SaTokenConsts.java``pom.xml` 中搜索版本号
- 或执行:`git log --oneline --all -- sa-token-core/src/main/java/cn/dev33/satoken/util/SaTokenConsts.java` 查找含 `release vX.X.X` 的提交
3. 记录基准提交 hash(如 `7bde74bc`
### 第二步:获取提交列表
执行:
```bash
git log <基准提交>..HEAD --oneline --format="%h %s"
```
可选,获取更详细的变更文件:
```bash
git log <基准提交>..HEAD --stat --format="=== %h %s ==="
```
### 第三步:分类与映射
将每条提交按以下规则归类到对应板块:
| 提交关键词/内容 | 归属板块 |
|----------------|----------|
| feat.*jackson、plugin、插件 | 插件 |
| feat.*starter、spring-boot、reactor | starter |
| refactor.*依赖、dependencies、模块 | 重构 |
| refactor.*solon、gateway | Solon(单独列出) |
| fix.*dubbo、dubbo3 | 插件 |
| demo.*、示例 | 示例 或 starter |
| docs.*、文档 | 文档 |
| chore、.gitignore、.vscode | 其它 |
| merge.*loveqq、maven-pull | 其它(含 PR 链接) |
### 第四步:动作词映射
根据提交类型选择正确的动作词:
| 提交类型 | 动作词 | 示例 |
|----------|--------|------|
| feat、新增 | 新增 | 新增 `sa-token-jackson3` 插件 |
| fix、修复 | 修复 | 修复 Maven 父子项目依赖下载问题 |
| refactor、重构 | 重构 / 移除 | 重构模块依赖层级;移除 xxx 模块 |
| 优化、perf | 优化 | 优化 Gateway 接口处理 |
| 拆分 | 拆分 | (少见) |
| 文档更新 | 同步/新增/优化/修复 | 按具体内容选择 |
### 第五步:按格式输出
使用下方模板生成最终内容。详见 [format-reference.md](format-reference.md)。
## 输出模板
```markdown
### vX.X.X @YYYY-M-D(或:开发中 / 未发布)
- 插件:
- 新增:xxx。 **[重要]**(如适用)
- 修复:xxx。merge: [pr N](https://gitee.com/dromara/sa-token/pulls/N)(如适用)
- starter
- 新增:xxx。
- 重构:
- 重构:xxx。
- 移除:xxx。
- Solon:(如有)
- 优化:xxx。merge: [pr N](url)
- 示例:(如有)
- 新增:xxx。
- 文档:
- 同步:xxx。
- 新增:xxx。
- 优化:xxx。
- 修复:xxx。
- 其它:
- 新增/修复/优化:xxx。
```
## 格式规则
1. **层级**:一级用 `-`,二级用 ` -`Tab + 短横线)
2. **动作词**:每条以「新增」「修复」「重构」「优化」「移除」「同步」等开头
3. **重要标记**:对用户影响大的变更加 `**[重要]**`
4. **PR/Issue 链接**:提交信息含 `!358``pr 340` 等时,补充 `merge: [pr N](https://gitee.com/dromara/sa-token/pulls/N)`
5. **代码/模块名**:用反引号包裹,如 `` `sa-token-jackson3` ``
6. **合并同类**:多条相似文档类提交可合并为一条(如「同步公众号、博客、赞助者名单」)
## 常见板块
- **core**:核心逻辑、API、配置变更
- **SSO**:单点登录相关
- **OAuth2**OAuth2 相关
- **插件**:插件包(jackson、dubbo、redis 等)
- **starter**Spring Boot / Reactor 等 starter
- **示例**demo 项目
- **文档**:文档、README、错别字
- **其它**:其它杂项
## 注意事项
- 合并提交(Merge branch)可忽略,只保留实际变更的提交
- 纯文档/错别字可适度合并,避免条目过多
- 版本号未发布时,可写 `v1.45.0(开发中)``未发布`
- 输出为可直接粘贴到 `update-log.md` 的 Markdown 片段