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?
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