axro / changelogger
用于创建一致且可提交的变更日志条目的CLI工具。
Requires
- php: ^8.0
- ext-json: *
Requires (Dev)
- laravel-zero/framework: ^8.9
- mockery/mockery: ^1.4
- phpunit/phpunit: ^9.5
- symfony/yaml: ^5.3
This package is auto-updated.
Last update: 2024-09-08 06:42:27 UTC
README
PHP 8.2 兼容的https://github.com/churchtools/changelogger分支
Changelogger是一个CLI工具,可帮助您创建更好的变更日志
在ChurchTools,我们开发SaaS。为了使我们的用户了解情况,我们为每个版本编写变更日志。我们过去常常把变更日志添加到问题中,但很多时候我们忘记添加变更日志——手动复制粘贴是很繁琐的工作!这个工具帮助我们编写和创建一致且可提交的变更日志,以便审查者可以在合并之前进行检查。
它做什么?
Changelogger 将每个日志条目保存为 changelogs/unreleased
目录中的YAML文件。在开发过程中,许多来自不同功能、错误修复等文件会进入这个文件夹。
我们为每个更改创建一个不同的文件,以便轻松跟踪它们。将它们添加到单个文件,如 Changelog.md
,可能会导致令人讨厌的合并冲突。每个更改一个文件可以避免这种情况。
最后,如果构建了一个新版本,Changelogger 会将所有未发布更改排序,并将新版本添加到 CHANGELOG.md
。之后,将删除 changelogs/unreleased
目录中的所有文件,您的项目即可为下一个版本做好准备。
Changelogger不会获取您的git日志。 存在许多工具会获取您的git日志并将提交信息转换为变更日志条目。我认为在许多情况下,这会导致糟糕的变更日志。提交信息不是变更日志。它们是供开发人员使用的信息片段,而不是供用户使用。我们的变更日志是手工制作的,因为非开发人员,即我们的用户,应该能够理解这些更改。
安装
此包需要PHP 8.2。您可以将包作为开发依赖项要求
composer require --dev axro/changelogger
或全局安装。
composer global require axro/changelogger
使用方法
# To add a new changelog use `new`. changelogger new # When a new version is released run `release` to generate the changelog. # The <tag> is the version number or build number of the release. changelogger release <tag> # Need to start over? Run `clean` to remove all unreleased logs. changelogger clean