国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

npm,pnpm,yarn,npx的那些事兒

開(kāi)發(fā) 前端
pnpm 起初看起來(lái)像 npm,因?yàn)樗鼈兊?CLI 用法相似,但管理依賴項(xiàng)卻大不相同;pnpm 的方法帶來(lái)更好的性能和最佳的磁盤空間效率。Yarn Classic 仍然很受歡迎,但它被認(rèn)為是遺留軟件,并且在不久的將來(lái)可能會(huì)放棄支持。Yarn Berry PnP 是新貴,但尚未看到它徹底改變包管理器領(lǐng)域的潛力。

?包管理器歷史

最早發(fā)布的包管理器是 npm,他在 2010 年 1 月就已經(jīng)發(fā)布了。它確立了包管理器工作的核心原則。

npm 的發(fā)布誕生了一場(chǎng)革命,在此之前,項(xiàng)目依賴項(xiàng)都是手動(dòng)下載和管理的。npm 引入了文件和元數(shù)據(jù)字段,將依賴項(xiàng)列表存儲(chǔ)在 package.json 文件中,并且將下載的文件保存到 node_modules 文件夾中。

隨著 node 的發(fā)展,node 的包越來(lái)越多,人們?cè)陧?xiàng)目中添加的依賴越來(lái)越多,如何更快地下載,如何安全地下載被人們開(kāi)始重視起來(lái),于是在 2016年,F(xiàn)acebook 等公司開(kāi)發(fā)了新的包管理器,就是我們現(xiàn)在經(jīng)常使用的 yarn。

yarn 的結(jié)構(gòu)設(shè)計(jì)參考了 npm,這導(dǎo)致 yarn 的初期版本主要通過(guò)并行化來(lái)解決安裝加速的問(wèn)題。

圖片

當(dāng)然 yarn 也提出了一些新概念,比如離線緩存,文件鎖定,緩存感知等。

當(dāng) yarn 出現(xiàn)以后,越來(lái)越多的人意識(shí)到 npm 的缺點(diǎn),于是有人在 yarn 之后, 又發(fā)明了一個(gè)新的 npm 版本,它被定義為 pnpm。

圖片

pnpm 和 npm, yarn的管理策略不同,它通過(guò)引入內(nèi)容可尋址存儲(chǔ)來(lái)提升性能。通過(guò)生成嵌套的 node_modules 文件夾,每個(gè)版本的依賴項(xiàng)僅僅物理存儲(chǔ)一次,節(jié)省了大量磁盤空間。通過(guò)符號(hào)鏈接,實(shí)現(xiàn)了文件的依賴管理。

圖片

在 pnpm 之后, yarn 感受到了對(duì)手的挑戰(zhàn),于是在 2020 年, yarn 2誕生了,這是一個(gè)全新的包管理器,可以說(shuō)它和之前的 yarn 改動(dòng)非常大,它通過(guò)了 PnP 的方法進(jìn)行依賴的管理,通過(guò)依賴查找表進(jìn)行包的管理,同時(shí),每個(gè)包通過(guò)zip的方式進(jìn)行存儲(chǔ),大大節(jié)省了磁盤空間。

npm

npm 通過(guò) install 來(lái)安裝包,然后會(huì)在當(dāng)前目錄生成一個(gè) package.json 文件 和 node_modules 文件夾,package.json 文件保存了報(bào)的版本,node_modules 文件夾保存了完整的包文件。

yarn

yarn 通過(guò) add 來(lái)安裝包,同樣地,它也會(huì)在當(dāng)前目錄總生成一個(gè)package.json 文件 和 node_modules 文件夾,不同的是,它會(huì)有自己的鎖定文件 yarn.lock, 此外它還會(huì)生成.yarn/cache/ 緩存文件夾。

pnpm

pnpm 項(xiàng)目的初始狀態(tài)看起來(lái)就像一個(gè) npm 項(xiàng)目一樣,也是有 package.json 文件 和 node_modules 文件夾,不同的是在 node_modules 文件夾中, 它有自己的文件夾目錄 .pnpm,在這個(gè)目錄中,它會(huì)用平鋪的方式來(lái)存儲(chǔ)各個(gè)包,然后以依賴名和版本號(hào)的名字命名,實(shí)現(xiàn)了版本的復(fù)用。而且它不是通過(guò)拷貝機(jī)器緩存中的依賴到項(xiàng)目目錄下,而是通過(guò)硬鏈接的方式,這能減少空間占用。

npx

npx想要解決的主要問(wèn)題,就是調(diào)用項(xiàng)目?jī)?nèi)部安裝的模塊。比如項(xiàng)目?jī)?nèi)部安裝了測(cè)試工具webpack,我們要使用的話需要通過(guò)node-modules/.bin/webpack -v這樣來(lái)使用,但是有了npx,我們可以直接npx webpack -v就能使用。此外,對(duì)于一些全局命令,如果不存在,它會(huì)自動(dòng)下載安裝到一個(gè)臨時(shí)目錄,然后使用,不會(huì)污染全局空間。

結(jié)論

包管理器的當(dāng)前狀態(tài)非常好。我們幾乎在所有主要的包管理器中實(shí)現(xiàn)了功能平等。但是,它們?cè)谝嫔w下確實(shí)存在很大差異。

圖片

pnpm 起初看起來(lái)像 npm,因?yàn)樗鼈兊?CLI 用法相似,但管理依賴項(xiàng)卻大不相同;pnpm 的方法帶來(lái)更好的性能和最佳的磁盤空間效率。Yarn Classic 仍然很受歡迎,但它被認(rèn)為是遺留軟件,并且在不久的將來(lái)可能會(huì)放棄支持。Yarn Berry PnP 是新貴,但尚未看到它徹底改變包管理器領(lǐng)域的潛力。

責(zé)任編輯:武曉燕 來(lái)源: 程序那些事兒
相關(guān)推薦

2025-03-25 08:50:00

2025-09-15 00:00:01

2021-11-29 12:11:09

npm包管理器工具

2025-07-07 06:21:46

2024-06-20 08:06:04

2022-02-25 14:19:56

依賴管理前端命令

2024-05-10 08:41:05

NPMYarn

2022-02-28 10:22:08

前端管理工具

2025-10-20 08:17:01

2022-08-03 00:04:29

pnpmyarnnpm

2022-02-21 09:58:31

包管理器npmyarn

2023-04-12 00:00:40

Node.jsMonoreponpm

2017-07-13 17:00:17

內(nèi)置執(zhí)行器開(kāi)發(fā)

2023-04-11 07:34:40

分布式系統(tǒng)算法

2021-03-18 09:01:53

軟件開(kāi)發(fā)軟件選型

2011-02-25 14:35:00

2021-06-02 08:33:31

TPCTPC-H系統(tǒng)

2018-09-26 06:50:19

2022-02-08 17:39:04

MySQL服務(wù)器存儲(chǔ)

2013-12-26 14:23:03

定位系統(tǒng)GPS監(jiān)測(cè)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

日韩精品一二三| 久久亚洲欧美日韩精品专区| 久久9精品区-无套内射无码| 另类小说一区二区三区| 欧美日韩最好看的视频| 欧美激情视频一区二区三区在线播放 | 蜜桃视频在线观看视频| 久久久久久久精| 妞干网在线观看视频| 国产一区二区三区黄视频| 亚洲精品9999| 精品一区二区国语对白| 六月婷婷激情网| 成人免费高清视频| 黄色影院一级片| 久久亚洲春色中文字幕久久久| 欧美大片在线播放| 91麻豆视频网站| 男女羞羞视频教学| 一区二区三区视频在线看| h精品动漫在线观看| 欧美日韩在线影院| 午夜在线小视频| 亚洲精品理论电影| av激情成人网| 欧美一区三区三区高中清蜜桃| 成人在线免费小视频| 97视频中文字幕| 日韩av一区二区三区四区| av日韩在线看| 国产精品久久久久久户外露出 | 91精选在线| 亚洲日本aⅴ片在线观看香蕉| 国产亚洲人成a在线v网站| 欧美黑人性猛交| 99精品小视频| 亚洲精品一区二区三区樱花| 成人av电影免费观看| 国产美女av| 日韩欧美另类在线| 97精品资源在线观看| 欧美整片在线观看| 亚洲一区网站| 成人亚洲视频在线观看| 欧美视频在线看| 成人午夜视屏| 国产精品久久久久久久app| 首页国产欧美日韩丝袜| 黄www在线观看| 色婷婷av一区二区三区之一色屋| 亚洲黄色中文字幕| 日本高清视频精品| 男人的j进女人的j一区| 成人影院一区二区三区| 91麻豆精品国产无毒不卡在线观看 | 国产高清一区二区三区视频| www.午夜精品| 综合久久十次| av天堂永久资源网| 欧美精品在线观看播放| 亚洲小说春色综合另类电影| 国产精品国产精品国产专区蜜臀ah| 日韩av一区二| 91欧洲在线视精品在亚洲| 精品国产一区a| 亚洲裸色大胆大尺寸艺术写真| 日韩三级电影| 亚洲国产一区二区在线播放| 亚洲伦乱视频| 国产精品一区二区你懂得| 久久久久久麻豆| 新版中文在线官网| 国产精品福利在线观看| 国产成人超碰人人澡人人澡| 黄色在线视频观看网站| 欧美精品aaa| 老色鬼精品视频在线观看播放| 3dmax动漫人物在线看| 在线性视频日韩欧美| 亚洲天堂成人| 男人午夜天堂| 欧美成人第一页| 久久精品国产精品亚洲红杏| 在线观看你懂得| 欧美激情图片区| 久久电影国产免费久久电影 | 蜜桃视频在线观看播放| 成人国产精品日本在线| 97久久超碰国产精品| 欧美aaaaaaa| 国产精品久久久久久久久婷婷| 国产日韩欧美精品在线| 依依综合在线| 日本电影一区二区三区| 亚洲成av人片一区二区| baoyu135国产精品免费| 成人性生活视频免费看| 欧美一区二区三区视频免费 | 国产色播av在线| 精品国产91亚洲一区二区三区www| 亚洲精品久久久久久国产精华液| 亚洲国产精选| 日本精品久久久久久久久久 | 97影院秋霞午夜在线观看| 国产精品福利观看| 国产精品美女久久久久久久 | 国产精品黄页网站在线播放免费| 永久免费毛片在线播放不卡| 久久激情久久| 日韩三级影院| 国产亚洲精品自在久久| 欧美午夜女人视频在线| 久久社区一区| 导航福利在线| 成人免费观看a| 亚洲大片精品永久免费| 国内精品视频在线观看| 日本wwwwwwwzzzzz视频| 国内精品在线一区| 欧美国产精品久久| 超碰cao国产精品一区二区| 国产精品亚洲a| 欧美极品欧美精品欧美视频| 久久久精品国产免大香伊| 中文成人激情娱乐网| 亚洲色欲综合一区二区三区| 久久中文字幕在线| 久久午夜免费电影| 97一区二区国产好的精华液| 国产精品v日韩精品v在线观看| 欧美成人免费大片| 中国av一区二区三区| 国产女人18毛片水真多18精品| 久久撸在线视频| 日韩美女视频在线观看| 午夜欧美一区二区三区在线播放| 91精品婷婷色在线观看| 国产精品免费观看| 久久国产精品-国产精品| 日韩精品最新网址| 国精产品一区一区三区mba视频| 欧美日韩五码| 手机在线看福利| 国产精品福利网站| 欧美男人的天堂一二区| 久久精品国产77777蜜臀| av成人在线播放| 香艳视频网站| 国产精品视频网站| 欧美久久久久久久久中文字幕| 久久99精品国产91久久来源| 亚洲欧洲二区| 五月天丁香婷| 日本高清不卡一区二区三| 尤物99国产成人精品视频| 国产精品天干天干在观线| 国产精品福利在线观看播放| av黄在线观看| 免费av网址在线| 91中文字幕在线观看| 精品国产精品网麻豆系列| 91天堂素人约啪| 久久精品一区二区不卡| 九色91在线| 欧美一级视频免费看| 国产精品激情自拍| 日韩欧美在线观看一区二区三区| jlzzjlzz亚洲日本少妇| 国产一区二区精品福利地址| 免费大片在线观看www| 日本xxxxxxxxxx75| 国产精品手机播放| 日韩成人激情视频| 亚洲色图另类专区| 日韩电影在线一区二区| 欧美成人精品一级| av成人手机在线| 欧美牲交a欧美牲交aⅴ免费下载| 91精品美女在线| 亚洲免费视频观看| 午夜精品一区二区三区免费视频 | 日韩视频一二区| 国内在线精品| 日韩av片在线看| 国产伦精品一区二区三| 欧美成年人网站| 欧美一级片免费看| 国产午夜精品理论片a级大结局| 欧美片第1页综合| 99精品国产九九国产精品| 九色在线视频蝌蚪| 成年人黄色片视频| 欧美成人免费在线| 日韩免费观看视频| 亚洲无线码在线一区观看| 日韩欧美精品网站| 欧美国产日韩精品免费观看| 狂野欧美性猛交xxxx巴西| 国产一区二区电影在线观看| 本网站久久精品|