变更日志生成器

手动编写变更日志,意味着每次发布时都要逐行翻查 git log。该工具跳过了这一步:你直接将想发布的条目粘贴到正确的类别(Added、Changed、Fixed、Removed)下,填入版本号和日期,它就会生成符合 Keep a Changelog 规范的 Markdown 部分,可直接粘贴进 CHANGELOG.md。同样的内容也可以生成纯文本。该工具不会读取你的 git 历史;由你决定哪些变更进入本次发布。

如何生成变更日志

  1. 1

    输入版本号和日期

    输入版本号,例如 1.2.0。留空日期则使用今天的日期。

  2. 2

    按类别添加条目

    将发布说明粘贴到 Added、Changed、Fixed 和 Removed 下,每行一个条目。空类别会被跳过。

  3. 3

    选择输出格式

    Markdown(`## [版本] - 日期` 标题搭配 `### Added` 风格的章节)或纯文本(`v1.2.0 (日期)` 标题搭配项目符号列表)。

  4. 4

    复制变更日志

    将输出粘贴到 CHANGELOG.md 中前一条记录的上方。

四个类别

该工具恰好生成四个章节,顺序如下:Added、Changed、Fixed、Removed。输出中的章节标题保持英文,这是 Keep a Changelog 的标准命名。

类别 使用时机
Added 新功能
Changed 对现有功能的变更
Fixed 错误修复
Removed 已移除的功能

Keep a Changelog 规范还包括 Deprecated、Security 和 Breaking 章节。该工具没有对应的输入框;你可以在粘贴输出后手动添加这些章节。

输出示例(Markdown)

## [1.4.0] - 2026-04-18

### Added
- Dark mode support for the dashboard (#312)
- CSV export on the users page (#318)

### Changed
- Upgrade React to 18.3 (#320)
- Pagination now defaults to 50 items per page (#322)

### Fixed
- Crash when editing users with a null email (#319)
- Timezone offset in scheduled reports (#321)

### Removed
- Legacy reports API (#324)

输出示例(纯文本)

v1.4.0 (2026-04-18)
ADDED:
  • Dark mode support for the dashboard (#312)
  • CSV export on the users page (#318)
CHANGED:
  • Upgrade React to 18.3 (#320)
  • Pagination now defaults to 50 items per page (#322)
FIXED:
  • Crash when editing users with a null email (#319)
  • Timezone offset in scheduled reports (#321)
REMOVED:
  • Legacy reports API (#324)

提示

  • 每行一个条目。 每个输入框中的一行会变成一条项目符号。空框会被跳过,你甚至可以完全留空某个类别。
  • 将条目写成变更日志的行,而不是日志备注。祈使句 “fix: handle null email on edit” 作为项目符号读起来很自然。
  • 引用 issue/PR 编号,方便读者深入查看:在输出中使用 (#319)[#319](link)
  • 每条记录一个版本:即使两个发布只相隔一天,也不要合并到一个块中。
  • 已发布与未发布:在顶部保留一个 [未发布] 章节,放置面向下一版本的变更;发布时将它们移到带日期的章节。

常见问题

遵循 Keep a Changelog(keepachangelog.com)规范:带日期的版本标题和分组项目符号列表。该工具生成 Added、Changed、Fixed 和 Removed 章节;其他标准章节(Deprecated、Security、Breaking)若手动添加,同样遵循这一规范。

该工具生成四个主要章节:Added、Changed、Fixed 和 Removed。没有专用于 Deprecated、Security 或 Breaking 的输入框,但你可以在粘贴前手动将这些章节添加到生成好的文本中。

该生成器是一款一次性的界面工具;如需自动化,请使用 standard-version、release-please 或 semantic-release 等 CLI 工具,它们能在你的构建流水线中实现相同的模式。

不会。它不会读取你的代码仓库或提交信息;条目由你自己粘贴。你输入的文字仅用于在服务器上生成输出,不会被存储或分享。

相关工具