8 个不稳定版本 (3 个破坏性更新)
0.4.3 | 2023年2月6日 |
---|---|
0.4.2 | 2022年12月25日 |
0.3.1 | 2022年7月6日 |
0.2.0 | 2022年7月4日 |
0.1.0 | 2022年7月4日 |
#2313 在 命令行工具
每月32 次下载
46KB
1K SLoC
nvm(-rust)
不令人失望的多平台 nvm™
安装
二进制文件
- 从 发行版 下载您操作系统的二进制文件
- 将文件重命名为
nvm
并将其放置在您的$PATH
中某个位置 - 享受吗?
Cargo
cargo install nvm-rust
关于 Windows 的说明
它不允许在没有管理员访问或开发者模式的情况下创建程序使用的符号链接。
要么以管理员身份运行程序,要么 启用开发者模式
功能比较
nvm-rust | nvm-windows | nvm | |
---|---|---|---|
平台 | Win, Mac, Linux | Windows | POSIX |
范围匹配 | ✅ | ❌ | ✅ |
版本文件 | ✅ | ❌ | ✅ |
默认全局包 | ❌ | ❌ | ✅ |
Node <4 | ✅* | ✅ | ✅ |
临时禁用 nvm | ❌ | ✅ | ✅ |
缓存 | ❌ | ❌ | ✅ |
别名 | ❌ | ❌ | ✅ |
**不受支持,可能可以工作?
范围匹配
允许您在运行命令时不必写出完整的版本。
例如
nvm install 12
将安装与12.0.0
匹配的最新版本,而不是12.0.0
。nvm install "12 <12.18"
将安装最新的12.17.x
版本,而不是仅仅给您一个错误。nvm use 12
将切换到最新安装的12.x.x
版本,而不是12.0.0
(这可能会给您一个错误,谁安装了这个版本?)。
版本文件(package.json#engines
,.nvmrc
,.tool-versions
)
如果未指定use
和install
命令的版本,nvm-rust将查找并解析包含Node版本规范的任何文件并使用它!
nvm-rust可以处理包含范围的文件,与nvm不同。
例如:
// package.json
{
...
"engines": {
"node": "^14.17"
}
...
}
# Installs 14.19.3 as of the time of writing
$ nvm install
程序将使用以下文件优先级:
package.json#engines
.nvmrc
.node-version
.tool-versions
来自asdf
默认全局包
开发
此项目使用Task来执行各种开发命令。
例如,要通过调试构建运行命令,请运行
task run -- install 12
要构建发布工件,请运行
task build:release
您可以在Taskfile中找到所有命令。
发布新版本
- 在
Cargo.toml
中提高版本号 - 在提交中创建标签,更新版本为指定版本(
vX.X.X
) - 推送两个
- 等待CI为标签创建草稿发布
- 编辑草稿发布说明
- 发布
依赖项
~8–19MB
~299K SLoC