优秀的编程知识分享平台

网站首页 > 技术文章 正文

fnm:基于 Rust 的 Node.js 版本管理器,速度更快!

nanyue 2024-08-09 07:13:05 技术文章 7 ℃

在 Node.js 开发时,经常会遇到一个问题,我们可能需要根据项目需求选择不同的 Node.js 版本。提到 Node.js 版本管理,大家可能最先想到的是 nvm,它很受开发者的欢迎,当前 Github star 数已达 75.2k。

在本文中,我们将介绍一款基于 Rust 的 Node.js 版本管理器:fnm,它的速度比 nvm 快很多!

fnm 介绍

fnm(Fast Node Manager)是一款用 Rust 编写的跨平台 Node.js 版本管理器。它支持 .nvmrc 文件和 Fish shell。它可在 Linux 和 Mac 上运行,以单个可执行文件的形式发布,并在 GitHub 上开源!

主要特性

  • 跨平台支持(macOS、Windows、Linux)
  • ? 单个文件,安装简单,即时启动
  • 以速度为本
  • 适用于 .node-version 和 .nvmrc 文件

快速安装

curl -fsSL https://fnm.vercel.app/install | bash

常用命令

A fast and simple Node.js manager

Usage: fnm [OPTIONS] <COMMAND>

Commands:
  list-remote  List all remote Node.js versions [aliases: ls-remote]
  list         List all locally installed Node.js versions [aliases: ls]
  install      Install a new Node.js version
  use          Change Node.js version
  env          Print and set up required environment variables for fnm
  completions  Print shell completions to stdout
  alias        Alias a version to a common name
  unalias      Remove an alias definition
  default      Set a version as the default version
  current      Print the current Node.js version
  exec         Run a command within fnm context
  uninstall    Uninstall a Node.js version
  help         Print this message or the help of the given subcommand(s)

fnm 与 nvm 对比

nvm(Node Version Manager) 是一个用于 Node.js 的版本管理器,旨在每个用户安装,并在每个终端中调用。nvm 适用于任何遵循POSIX 标准的终端(sh、dash、ksh、zsh、bash),特别适用于这些平台:unix、macOS 和 windows WSL。

值得注意的是,fnm 支持 .nvmrc 文件,因此无论项目需要什么版本,fnm install 都会安装。nvm 和 fnm 都支持 --lts 选项,可以获取最新的长期支持版本的 node。

与 fnm 相比,nvm 的运行速度要慢得多,它不支持 Windows 操作系统。作为一种变通办法,nvm 团队推荐使用 nvm-windows,但官方并不支持它。

总结

fnm 已成为我电脑上默认的 Node.js 管理器。虽然 nvm 和 volta 等管理器也很优秀,但由于其速度和简单,fnm 成为了我的首选。感兴趣的同学可以试用。

Tags:

最近发表
标签列表