8 个版本 (稳定)

1.2.0 2020年11月12日
1.1.0 2020年3月27日
1.0.5 2020年2月28日
1.0.2 2020年1月20日
0.1.0 2019年11月2日

#268构建工具

每月 47 次下载

自定义许可

26KB
455

什么是 What Bump?

CircleCI

what-bump 是一个简单的工具,它读取 git 仓库的提交历史,并使用提交消息来决定需要哪种类型的版本升级。

what-bump 假设提交消息是根据 常规提交规范 编写的,并且您的软件使用 语义化版本控制

此外,如果您向 what-bump 提供软件的当前版本号,它将告诉您下一个版本号应该是什么。

理由

有许多工具可以读取常规提交消息并管理软件发布:例如,查看常规提交网站上的 列表,以及 calcver

然而,这些工具中的大多数都深度集成了 NPM,或者以某种方式假设您正在使用 NPM,试图管理软件的整个发布过程,并且设置起来并不简单(尤其是如果您不使用 NPM!)。我能找到的唯一不与 NPM 集成的工具是 calcver,但它非常年轻,文档很少,可能比所需的工具更强大或更复杂。

这个工具 what-bump 的目标是成为一个简单、直观、无需配置的实用工具,只做一件事:根据所有提交消息确定软件的下一个版本号。您需要指定上一个修订版是什么(我们假设您已对其进行标记并且足够了解 bash 魔法来完成此操作)以及当前版本是什么(同样如此)。

安装

获取 what-bump 的最简单方法是使用 cargo 安装,以下是相应的命令:

cargo install what-bump

如果你更喜欢使用 Docker,Docker Hub 上有一个官方镜像:https://hub.docker.com/r/albx79/what-bump

使用方法

只需输入

what-bump --help

即可获取所需的全部解释。

基本上,假设你将之前的版本标记为 v1.0.2,只需输入

what-bump v1.0.2 --from 1.0.2

即可将下一个版本号打印到标准输出。

兼容性

what-bump 的兼容性比 Conventional Commits 规范略高。

特别是,它只检查提交类型是否以 "fix" 或 "feat"(不区分大小写)开头,因此它也会接受 "feature"、"fixed" 或 "fixing" 等内容。

另外,任何其他类型的提交或不符合规范的提交都将被忽略,不会对版本升级做出贡献。

构建

使用 Cargo

what-bump 是用 Rust 编写的。你需要至少安装版本 1.36 才能构建(我使用的是这个版本)。按照官方网站上的说明安装 rust。

它依赖于 git2-rs,该依赖要求你的系统上已安装 libgit2。如果你在使用 git,它应该已经可用。

要从源代码构建,克隆仓库并使用以下命令构建:

cargo build --release

然后你可以使用以下命令本地安装它:

cargo install --path .

使用 Docker

或者,如果你有 docker,可以使用提供的 Dockerfile 构建 what-bump

docker build . -t what-bump

例如,你可以用以下方式运行它:

docker run -v $PWD:/data what-bump --path /data --help

依赖项

~24MB
~487K SLoC