国产91在线无码_少妇人妻无码高清_91人妻中文字幕无码专区在线_国产福利在线播放_免费 无码 国产成年视频网站

P8大佬發(fā)現(xiàn)比 nvm 更好用的 node 版本管理工具,簡(jiǎn)直太方便了(node哪個(gè)版本比較穩(wěn)定)

什么是 Volta

Volta 是一種管理 JavaScript 命令行工具的便捷方式。

volta 的特點(diǎn):

  • 速度
  • 無(wú)縫,每個(gè)項(xiàng)目的版本切換
  • 跨平臺(tái)支持,包括 Windows 和所有 Unix shell
  • 支持多個(gè)包管理器
  • 穩(wěn)定的工具安裝-無(wú)需每次升級(jí)都重新安裝!
  • 可擴(kuò)展性掛鉤用于特定于站點(diǎn)的定制

為什么選擇 Volta?

使用 Volta,您可以一次選擇 Node 引擎,然后不再擔(dān)心它。您可以在項(xiàng)目之間切換,而不必手動(dòng)切換 nodejs 版本。你可以在工具鏈中安裝 npm 二進(jìn)制包,而不必定期重新安裝它們,或者弄清楚它們停止工作的原因。

快速設(shè)置和切換 Node 版本

獲取并使用特定版本的 Node:

volta install node@14

您應(yīng)該立即注意到該工具的響應(yīng)速度有多快。您的開發(fā)時(shí)間是寶貴的 JavaScript 開發(fā)人員應(yīng)該擁有時(shí)髦的工具。

為合作者提供可復(fù)制的環(huán)境

Volta 允許你用一個(gè)命令為一個(gè)項(xiàng)目選擇節(jié)點(diǎn)引擎和包管理器:

volta pin node@12

Volta 將 node 引擎的準(zhǔn)確版本保存在 package.json,這樣你就可以把你的選擇提交給 git。從那時(shí)起,每次在項(xiàng)目目錄中運(yùn)行 Node 時(shí),Volta 都會(huì)自動(dòng)切換到您選擇的同一版本 的 Node。類似的。所有的合作者都可以通過在他們的開發(fā)機(jī)器上安裝 Volta 來做同樣的事情。

Install and forget

Volta 還允許您將最喜歡的二進(jìn)制包作為命令行工具安裝,而不必?fù)?dān)心它們會(huì)干擾您的開發(fā)項(xiàng)目。更好的是,這些工具在安裝時(shí)被固定到特定的 Node 引擎上,除非您顯式地告訴它們,否則它們不會(huì)更改。這意味著一旦一個(gè)工具工作了,它就會(huì)繼續(xù)工作。

npm install -g surgesurge -h

安裝 Volta

在安裝 Volta 前, 如果有使用其它的 nodejs 管理工具/nodejs,可以提前卸載(非必須)。

Unix 安裝

在大多數(shù) Unix 系統(tǒng)(包括 macOS)上,您可以使用一個(gè)命令安裝 Volta:

curl https://get.volta.sh | bash

對(duì)于 bash, zshfish,這個(gè)安裝程序將自動(dòng)更新控制臺(tái)啟動(dòng)腳本。如果您希望防止修改控制臺(tái)啟動(dòng)腳本,請(qǐng)參閱跳過 Volta 設(shè)置。要手動(dòng)配置你的 shell 使用 Volta,編輯你的控制臺(tái)啟動(dòng)腳本如下:

  • 將 VOLTA_HOME 變量設(shè)置為 $HOME/.volta
  • 將 $VOLTA_HOME/bin 添加到 PATH 變量的開頭

Windows 安裝

對(duì)于 Windows,下載并運(yùn)行 Windows 安裝程序并按照說明操作。

Volta 的功能依賴于創(chuàng)建符號(hào)鏈接,所以你必須:

啟用開發(fā)者模式(推薦)

以提升的權(quán)限運(yùn)行 Volta(不推薦)

Windows 下的 linux 子系統(tǒng)

如果您在 Linux 的 Windows 子系統(tǒng)中使用 Volta,請(qǐng)遵循上面的 Unix 安裝指南。

使用 Volta

Volta 的工作是管理 JavaScript 命令行工具,如 node、npm、yarn 或作為 JavaScript 包的一部分發(fā)布的可執(zhí)行文件

與包管理器類似,Volta 會(huì)根據(jù)當(dāng)前目錄跟蹤您正在處理的項(xiàng)目(如果有的話)。Volta 工具鏈中的工具會(huì)自動(dòng)檢測(cè)您所處的項(xiàng)目是否使用特定版本的工具,并為您路由到正確的工具版本。

管理您的工具鏈

您可以使用兩個(gè)命令控制由 Volta 工具鏈管理的工具: Volta install 和 Volta uninstall。

安裝 node 引擎

要將工具安裝到工具鏈中,需要設(shè)置該工具的默認(rèn)版本。Volta 將始終使用這個(gè)默認(rèn)值,除非您在一個(gè)已配置 Volta 使用不同版本的項(xiàng)目目錄中工作。當(dāng)您選擇默認(rèn)版本時(shí),Volta 也會(huì)將該版本下載到本地緩存中。

例如,您可以選擇 node 的確切版本作為默認(rèn)版本:

volta install node@14.15.5

你不需要指定一個(gè)精確的版本,在這種情況下,Volta 會(huì)選擇一個(gè)合適的版本來匹配你的請(qǐng)求:

volta install node@14

你也可以指定最新版本,或者甚至完全不選擇版本,Volta 將選擇最新的 LTS 版本:

volta install node

一旦您運(yùn)行了這些命令中的一個(gè),在您的 PATH 環(huán)境(或 Windows 中的 PATH)中由 Volta 提供的節(jié)點(diǎn)可執(zhí)行文件將在默認(rèn)情況下自動(dòng)運(yùn)行您選擇的 node 版本。

同樣地,你可以使用 volta install npm 和 volta install Yarn 分別選擇 npm 和 Yarn 包管理器的版本。這些工具將使用您選擇的 Node 的默認(rèn)版本運(yùn)行。

安裝二進(jìn)制包

使用 Volta,使用包管理器全局安裝命令行工具也會(huì)將其添加到工具鏈中。例如,vuepress 包包含一個(gè)同名的可執(zhí)行文件:

yarn global add vuepress

當(dāng)您將一個(gè)包安裝到工具鏈上時(shí),Volta 會(huì)獲取當(dāng)前的默認(rèn) Node 版本,并將該工具固定到該引擎上(有關(guān)更多信息,請(qǐng)參閱包二進(jìn)制文件)。 Volta 不會(huì)改變工具的固定引擎,除非你更新工具,無(wú)論如何。這樣,您就可以確信您安裝的工具不會(huì)在您背后更改。

管理您的項(xiàng)目

Volta 允許團(tuán)隊(duì)或協(xié)作者社區(qū)標(biāo)準(zhǔn)化他們?cè)陧?xiàng)目中使用的開發(fā)工具。

固定 Node 引擎

volta pin 命令允許您為項(xiàng)目選擇 Node 引擎和包管理器版本:

volta pin node@12.20volta pin yarn@1.19

Volta 會(huì)把這個(gè)放在你的 package.json,這樣你就可以把你選擇的工具提交到版本控制:

"volta": { "node": "12.20.2", "yarn": "1.19.2"}

這樣,每個(gè)使用 Volta 在項(xiàng)目上工作的人都會(huì)自動(dòng)獲得您選擇的相同版本。

node --version # 12.20.2yarn --version # 1.19.2

使用項(xiàng)目工具

node 和包管理器可執(zhí)行文件并不是工具鏈中唯一的智能工具:工具鏈中的包二進(jìn)制文件也知道您的當(dāng)前目錄,并尊重您所在項(xiàng)目的配置。

例如,安裝 Typescript 包會(huì)將編譯器 tsc 添加到你的工具鏈中:

npm install --global typescript

根據(jù)你所在的項(xiàng)目,這個(gè)可執(zhí)行文件會(huì)切換到項(xiàng)目選擇的 TypeScript 版本:

cd /path/to/project-using-typescript-3.9.4tsc --version # 3.9.4cd /path/to/project-using-typescript-4.1.5tsc --version # 4.1.5

安全方便

因?yàn)?Volta 的工具鏈總是跟蹤你在哪里,它確保你使用的工具總是尊重你正在做的項(xiàng)目的設(shè)置。這意味著您不必?fù)?dān)心在項(xiàng)目之間切換時(shí)更改已安裝軟件的狀態(tài)。

更重要的是,當(dāng) Volta 運(yùn)行一個(gè)工具時(shí),它會(huì)覆蓋它的軌跡,確保你的 npm 或 Yarn 腳本永遠(yuǎn)不會(huì)看到你的工具鏈中有什么。

這兩個(gè)特性的結(jié)合意味著 Volta 解決了全局包的問題。換句話說,Volta 為您提供了全局包安裝的便利,但沒有危險(xiǎn)。

例如,你可以使用 npm i -g typescript 安全地安裝 TypeScript,并享受直接調(diào)用 tsc 的便利無(wú)需擔(dān)心項(xiàng)目的包腳本可能意外地依賴于您的機(jī)器的全局狀態(tài)。

Pnpm 支持

對(duì) pnpm 的支持目前是實(shí)驗(yàn)性的。要啟用該功能,請(qǐng)確保環(huán)境變量 VoLTA_FEATURE_PNPM 設(shè)置為 1。在 Windows 上可以添加到環(huán)境變量中。在 Linux/Mac 上,您可以在配置文件腳本中設(shè)置該值(例如 .bash_profile、.zshrc 或類似的腳本)。

已知的限制:

全局安裝:目前不支持全局安裝(例如 pnpm install -g),并且會(huì)導(dǎo)致錯(cuò)誤。

遷移:目前還沒有自動(dòng)遷移功能,因此如果您以前將 pnpm 作為 Volta 全局文件安裝,則需要通過調(diào)用 Volta install pnpm 手動(dòng)重新安裝它。在啟用支持并重新安裝之前,您可以通過 volta uninstall pnpm 卸載之前安裝的 pnpm 包。一旦切換到本機(jī) pnpm 支持,由于目前缺乏卸載實(shí)現(xiàn),可能無(wú)法通過調(diào)用相同的命令來刪除孤立的舊 pnpm 包。

Volta 命令

Volta 1.1.1The JavaScript Launcher ? To install a tool in your toolchain, use `volta install`. To pin your project's runtime or package manager, use `volta pin`.USAGE: volta [FLAGS] [SUBCOMMAND]FLAGS: --verbose Enables verbose diagnostics --quiet Prevents unnecessary output -v, --version Prints the current version of Volta -h, --help Prints help informationSUBCOMMANDS: fetch Fetches a tool to the local machine install Installs a tool in your toolchain uninstall Uninstalls a tool from your toolchain pin Pins your project's runtime or package manager list Displays the current toolchain completions Generates Volta completions which Locates the actual binary that will be called by Volta setup Enables Volta for the current user / shell run Run a command with custom Node, npm, pnpm, and/or Yarn versions help Prints this message or the help of the given subcommand(s)

volta fetch 將工具緩存到本地機(jī)器以供離線使用

volta install 設(shè)置工具的默認(rèn)版本

volta uninstall 從工具鏈中卸載工具

volta pin 固定項(xiàng)目的運(yùn)行時(shí)或包管理器

volta list 顯示當(dāng)前工具鏈

volta completions 命令補(bǔ)全

volta which 查看 volta 安裝的工具的目錄

volta setup 為當(dāng)前用戶/shell 啟用 volta

volta run 運(yùn)行帶有自定義Node、npm、pnpm和/或Yarn版本的命令

volta help 輸出幫助信息

結(jié)束語(yǔ)

如果你在工作中遇到有多個(gè)項(xiàng)目使用不同版本的 nodejs,就來試試Volta吧!

比 nvm 更好用的 node 版本管理工具
原文鏈接:https://juejin.cn/post/7275608678828916755

版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn),該文觀點(diǎn)僅代表作者本人。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請(qǐng)發(fā)送郵件至 舉報(bào),一經(jīng)查實(shí),本站將立刻刪除。

(0)
上一篇 2023年10月26日 上午10:19
下一篇 2023年10月26日 上午10:35

相關(guān)推薦