churchtools / changelogger
用于创建一致并可提交的变更日志条目的CLI工具。
v0.8.0
2023-09-21 10:28 UTC
Requires
- php: ^8.1
- ext-json: *
- laravel/prompts: ^0.1
Requires (Dev)
- laravel-zero/framework: ^10.0
- mockery/mockery: ^1.4
- phpunit/phpunit: ^9.5
- symfony/yaml: ^5.3
This package is auto-updated.
Last update: 2024-09-11 03:17:11 UTC
README
Changelogger是一个CLI工具,可以帮助你创建更好的变更日志
在ChurchTools,我们开发了一个SaaS。为了保持用户了解最新信息,我们为每个版本编写变更日志。我们过去常常把变更日志添加到问题中,但很多时候我们忘记添加变更日志——手动复制粘贴是一件很繁琐的工作!这个工具帮助我们编写和创建一致并可提交的变更日志,以便审阅者可以在合并前检查。
它做什么?
Changelogger将每个日志条目保存为位于changelogs/unreleased目录中的YAML文件。在开发过程中,来自不同功能、错误修复等的许多文件都会进入这个文件夹。
我们为每个变更创建不同的文件,以便轻松跟踪。将它们添加到单个文件,如Changelog.md中,可能会导致糟糕的合并冲突。每个变更一个文件可以避免这种情况。
最终,如果构建了新版本,Changelogger将所有未发布变更排序后添加到CHANGELOG.md中。之后,删除changelogs/unreleased中的所有文件,项目即可准备下一个版本。
Changelogger不会获取你的git日志。有许多工具可以从你的git日志中提取提交消息并将其转换为变更日志条目。在我看来,这通常会导致糟糕的变更日志。提交消息不是变更日志。它们是开发者信息的一部分,而不是用户信息。我们的变更日志是手工制作的,因为非开发者,也就是我们的用户,应该能够理解这些变化。
安装
此包需要PHP 8.1。您可以将其作为开发依赖项要求
composer require --dev churchtools/changelogger
或全局安装。
composer global require churchtools/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

