#版本管理器 #Node #版本 #nvm #管理器

应用 nvm-rust

一个不会令人失望的 Node 版本管理器

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 次下载

MIT/Apache

46KB
1K SLoC

nvm(-rust)

不令人失望的多平台 nvm™

安装

二进制文件

  1. 发行版 下载您操作系统的二进制文件
  2. 将文件重命名为 nvm 并将其放置在您的 $PATH 中某个位置
  3. 享受吗?

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

如果未指定useinstall命令的版本,nvm-rust将查找并解析包含Node版本规范的任何文件并使用它!

nvm-rust可以处理包含范围的文件,与nvm不同。

例如:

// package.json
{
  ...
  "engines": {
    "node": "^14.17"
  }
  ...
}

# Installs 14.19.3 as of the time of writing
$ nvm install

程序将使用以下文件优先级:

  1. package.json#engines
  2. .nvmrc
  3. .node-version
  4. .tool-versions来自asdf

默认全局包

开发

此项目使用Task来执行各种开发命令。

例如,要通过调试构建运行命令,请运行

task run -- install 12

要构建发布工件,请运行

task build:release

您可以在Taskfile中找到所有命令。

发布新版本

  1. Cargo.toml中提高版本号
  2. 在提交中创建标签,更新版本为指定版本(vX.X.X
  3. 推送两个
  4. 等待CI为标签创建草稿发布
  5. 编辑草稿发布说明
  6. 发布

依赖项

~8–19MB
~299K SLoC