Skip to content

pnpm的使用

🕒 Published at:

有两个优势

  1. 硬链接组织依赖,可以节省磁盘空间
  2. node_modules非扁平,避免使用非直接依赖

与 npm 的差异

与 npm 不同,pnpm 会验证所有参数。例如,pnpm install --target_arch x64 将运行 失败,由于 --target_arch 不是一个有效的 pnpm install 参数。

文档

官方中文文档:https://www.pnpm.cn/

基础用法

推荐Node.js版本16.13.1 兼容Windows 10、macOS with M1 chip、CentOS 7

全局安装npm i -g pnpm

根据package.json文件安装所有依赖,pnpm i

新增项目依赖pnpm add <packageName> 新增开发依赖pnpm add -D <packageName>

执行package.json中scripts字段的脚本pnpm <cmd>

查看registrypnpm config get registry

pnpm registry配置是从npm上读来的,因此将npm的registry改了之后,pnpm的registry也同步更改了

设置只使用pnpm安装依赖包

json
{
  "name": "pnpm-test",
  "version": "1.0.0",
  "private": true,
  "scripts": {
    "preinstall": "npx only-allow pnpm",
  },
  "engines": {
    "node": ">= 16.13.1",
    "pnpm": ">= 7.18.1"
  }
}

查看有哪些依赖包可以更新,并列出对应的版本号pnpm outdated

查看pnpm仓库路径pnpm store path