前言
本篇文章一起收录在大众号《泡芙玩前端》,主打前端、Rust,同步更新中
这篇文章首要介绍一个运用 Rust 进行编写的一体化版别办理东西 Rtx,比方运用它来办理 Node.js 版别,它很简单易用,运用了它,就能够抛弃掉 nvm 了。
它具有下面这些特性:
- 它类似于 asdf 这个版别办理东西,完全兼容 asdf 的插件体系。
- 速度十分快——由于它运用 Rust 编写,而且优化了功能,比 asdf 要快 20 倍以上。
- 含糊匹配和运用别号——装置时只需求指定 “v20” 或 “lts” 版别就够了。Rtx 将计算出正确的版别,而不需求指定准确的版别。
- 兼容十分多的言语,只需求运用这一个东西去代替 gvm、 nvm、 rbenv 和 pyenv 这些东西就够了。
那么 asdf 是啥?
asdf 是一个指令行东西,能够在每个项目上办理多个言语运行时的版别。就像 gvm、 nvm、 rbenv 和 pyenv 等这些版别办理东西的一体化调集,你只需求装置对应言语的插件即可,也就是说有了 它,就不需求装置其他一堆东西了。
那么 Rtx 也如 asdf 一样,能够直接作为替代品来运用,而且更强大。
虽然可是,它现在不支撑 Windows 体系,可是官方已经在考虑支撑中了。Linux 和 MacOS 的用户能够运用起来了,接下来咱们就来说说怎么装置和运用它吧
装置
运用 curl 装置(引荐):
curl https://rtx.jdx.dev/install.sh | sh
运用 npm 装置:
npm install -g rtx-cli
运用 Rust cargo 来装置
cargo install cargo-binstall
cargo binstall rtx-cli
注册指令钩子
装置完结之后需求在 shell 中注册指令钩子
Bash:
echo 'eval "$(rtx activate bash)"' >> ~/.bashrc
Zsh:
echo 'eval "$(rtx activate zsh)"' >> "${ZDOTDIR-$HOME}/.zshrc"
装置完结之后,能够查看到版别号阐明装置成功了
rtx -v
装置 Node.js
装置 node 20 的长时间支撑版别并设置为大局默许
rtx use --global node@20
装置完结之后在控制台输入下面指令能打印出对应的版别即可
node -v
常用指令
rtx install node@20.0.0 装置指定版别号
rtx install node@20 含糊匹配装置
rtx use node@20 在当前项目中运用 node 20.x 版别
rtx use -g node@20 在大局运用 node 20.x 版别
rtx use node@latest 在当前项目运用最新版 node
rtx use -g node@system 运用体系的 node 作为大局版别
其它
上面仅仅提到了 node.js,除了 node.js 之外,比方 Java/Golang 等言语,只需求装置上它们对应的插件,然后就能够对其进行版别办理了。其它的还有一些装备化,定制化的才能就等需求运用到的时候再去探究好了。更多的才能咱们也能够去参考下官方。
总结
这篇文章首要讲了这个东西的根底运用,可是对于咱们日常来说其实也足够了,假如你现在一起在运用 Go/Node.js 或其它的多个言语,那么这个东西其实还是很不错的,能够让你省掉许多装置对应言语版别办理东西的流程。
本篇文章一起收录在大众号《泡芙玩前端》,主打前端、Rust,同步更新中