#semver #changelog #versioning #git-repository #automation #command-line-tool #version-control

bin+lib gitscribe

一个简单的命令行工具,用于从 Git 仓库生成变更日志并控制项目的版本控制

15 个不稳定版本 (3 个破坏性更新)

新版本 0.4.0 2024 年 8 月 20 日
0.3.2 2024 年 4 月 29 日
0.2.13 2024 年 3 月 1 日
0.2.8 2024 年 2 月 13 日
0.1.17 2024 年 2 月 12 日

#639 in 开发工具

MIT/Apache

560KB
958

GitScribe

  • 一个帮助您在项目中维护具有语义版本的变更日志文件的工具。

安装

要求

rust 工具链

从 cates.io 安装

  • cargo安装 gitscribe

为了更好的体验

强制在您的项目中使用约定式提交

使用方法

gitscribe --help

创建新版本

# depending on the changes you made, you can use the following commands to make a new release version
gitscribe patch | minor | major

幕后,它将执行以下操作

  • 如果没有找到配置文件,它将创建一个新文件
  • 更新 gitscribe.json 中的版本
  • 更新或创建新的变更日志文件
    • 默认文件名为 CHANGELOG.md,位于项目根目录
  • 添加并提交更改

failed_patch

如上所示,您必须有一个干净的作业树。

以下是一个成功的示例

successful_patch

使用默认配置,您将在项目根目录生成一个新的 markdown 变更日志,并在您的作业分支上创建一个新的 chore 提交,该提交包含新版本。

此工具将 输出符合约定式提交规范的提交。

设置别名

为了便于使用,您可以在您的 shell 配置文件中设置别名

alias gs="gitscribe"

功能

  • 创建新的变更日志文件

  • 为不同的输出格式创建多个变更日志文件

  • 与其他包管理文件(pyproject.toml,package.json,cargo.toml)同步 gitscribe.json 版本。

  • 更多功能即将推出..

依赖

~10–21MB
~278K SLoC