关于 git-cliff
git-cliff 根据 Git 提交信息自动生成结构化的变更日志。支持自定义格式和筛选规则,与传统提交规范(Conventional Commits)兼容,开发者可以快速为每个版本生成文档化的发布说明。
主要功能
- 01从 Conventional Commits 自动提取版本信息
- 02使用自定义模板定制变更日志格式
- 03按提交类型、作用域或其他条件筛选和分组提交
- 04初始化项目配置并导出变更日志到 Markdown 文件
适用场景
- 01在 CI/CD 流程中自动生成版本发布说明
- 02根据项目约定快速定制变更日志样式和内容
- 03为开源项目维护清晰、结构化的版本历史文档
安装
选择你的系统或包管理器,复制命令到终端运行。
$
安装完成后运行git-cliff --version确认安装成功。
命令示例
常用命令按使用顺序排列。
01
02
详细介绍
文档 | 网站
git-cliff 可利用 conventional commits 和由正则表达式驱动的自定义解析器,根据 Git 历史记录生成 changelog 文件。可以通过配置文件自定义 changelog 模板,以符合所需格式。

文档
请参阅官方文档,了解如何使用 git-cliff。
你还可以查看社区撰写的博客文章:
- git-cliff 入门:发布管理:了解如何自动化软件发布
- Git-cliff 与 monorepo:介绍 git-cliff 对 monorepo 的支持
- git-cliff:处理 Changelog 的聪明方法
媒体报道
- 使用 git-cliff 将 Git 提交转换为 changelog - RustLab 2023(演讲)
- 采访 git-cliff 的 Orhun - Console #141(新闻简报)
- KaiCode 开源节 2024(获得第二名)
编辑器支持
- git-cliff.el - 在 Emacs 中生成、更新和发布 changelog
类似/相关项目
- git-journal - Git 提交消息和变更日志生成框架
- clog-cli - 根据 Git 提交历史生成精美的变更日志
- relnotes - 自动为项目生成发行说明的工具。
- cocogitto - 一套用于 Conventional Commits 和 semver 规范的 CLI 工具。
- cliff-jumper - 一个 NodeJS CLI 工具,结合 git-cliff 和 conventional-recommended-bump ,以语义化方式递增 NodeJS 软件包版本,并生成由 git-cliff 驱动的变更日志。
- release-plz - 从 CI 发布 Rust 软件包。
- git-changelog-command-line - 使用 Conventional Commits 生成变更日志并确定下一个版本。
- git-changelog:使用 Jinja2 模板自动生成变更日志。
贡献者
感谢这些杰出人士 ✨
由 contrib.rocks 制作。
社交媒体
许可证
您可以选择采用 Apache License Version 2.0 或 The MIT License 进行授权。
版权
版权所有 © 2021-2025,git-cliff 贡献者
评论
支持 Markdown
