13个版本
使用旧的Rust 2015
0.7.1 | 2020年7月17日 |
---|---|
0.7.0 | 2019年2月13日 |
0.6.1 | 2018年3月5日 |
0.4.0 | 2016年12月28日 |
0.3.5 | 2016年5月9日 |
#1185 in 文件系统
每月117次下载
29KB
680 行
rusty-release
一个命令行工具,用于制作cargo项目的半自动发布。
您必须明确指定新版本号应该增加哪个部分(例如 rusty-release minor
),并且您必须自己编写变更日志,rusty-release
只会将新版本号放在变更日志的顶部并打开它。
安装
$ cargo install rusty-release
构建的二进制文件将位于 ~/.cargo/bin/rusty-release
。
用法
rusty-release
必须与一个版本号一起使用(rusty-release <VERSION>
),其中 <VERSION>
必须是 major
、minor
、patch
或 current
。 major/minor/patch
增加当前版本号相应的部分,而 current
使用当前版本号制作发布版本。因此,current
可能对第一个、初始发布最有用。
发布流程
-
检查git工作树是否未修改,没有待提交的文件,以及本地和远程git仓库是否同步。
-
运行测试。
-
从
Cargo.toml
读取当前版本,并根据<VERSION>
进行增量,并将其写回Cargo.toml
。 -
构建发布版本。
-
如果有,将在配置的编辑器中打开变更日志 - 在顶部添加新版本 - 和一个包含从HEAD到上一个发布所有提交的临时文件。
所有文件名以小写字母开头的文件,如果文件名等于
changelog
,则被视为变更日志文件。 -
创建一个包含更改文件和未忽略文件的git提交,提交消息使用配置的提交信息。
-
使用配置的名称创建一个git标签。
-
将git提交和标签推送到远程仓库。
-
调用
cargo publish
。
配置
如果可用,从主目录和cargo项目根目录(Cargo.toml
所在位置)读取配置文件.rusty-release.toml
。
当前支持配置(默认配置显示)如下
# publish to crates.io
cargo_publish = true
# push to git remote repository
git_push = true
# string template for the creation of the commit message, currently the two
# placeholders '<PROJ_NAME>' - the name of the cargo project - and
# '<NEW_VERSION>' - the version of the release - are supported
commit_message = "<PROJ_NAME> <NEW_VERSION>"
# a string template like 'commit_message' supporting the same placeholders
tag_name = "v<NEW_VERSION>"
# the editor command for opening the changelog, for the best experience the
# editor command should be able to open multiple files in a split view,
# first the environment variables $EDITOR and $VISUAL are checked and if
# they aren't available then "gvim -o" is used
editor = "gvim -o"
依赖关系
~3–12MB
~145K SLoC