pnpm 命令
pnpm 命令速查,Workspace Monorepo/Store 管理/镜像配置/npm 对照,一键复制
共 35 个脚本
初始化项目
创建 package.json,pnpm init 比 npm 多生成一些默认字段。
安装全部依赖
根据 package.json 和 pnpm-lock.yaml 安装所有依赖,使用硬链接复用 store 中的包,速度极快。
CI 环境安装(锁定)
严格按 lockfile 安装,不允许更新,适合 CI/CD 环境。等价于 npm ci。
添加依赖
添加生产依赖到 package.json。
移除依赖
从 node_modules 和 package.json 中移除指定包。
更新依赖
检查并更新依赖到 lockfile 允许的最新版本。
查看已安装依赖
以树形结构查看依赖关系,depth 控制递归深度。
创建 Workspace
在根目录创建 pnpm-workspace.yaml,声明包含的子包目录。
按包名过滤执行
使用 --filter 在指定 workspace 包中执行命令,支持通配符和依赖关系过滤。
Workspace 内互引依赖
将 workspace 内的其他包作为依赖引入,自动使用 workspace: 协议。
在所有包中运行脚本
使用 -r(recursive)在所有 workspace 包中执行同名脚本,--parallel 并行执行。
Monorepo 发布
递归发布所有需要发布的包,支持 changesets 配合。
查看 Store 路径
显示全局 store 目录路径,所有包版本都存储在这里。
清理无用 Store
删除 store 中没有被任何项目引用的包,释放磁盘空间。
预装包到 Store
将指定包下载到全局 store,但不安装到项目,适合离线或预热场景。
检查 Store 完整性
检查 store 中的包是否被修改或损坏。
预取依赖(离线构建)
只下载依赖到 store,不修改 node_modules,适合 Docker 构建层缓存。
运行 package.json 脚本
执行 scripts 中定义的脚本,pnpm run 可省略(直接 pnpm <script>)。
临时执行包(dlx)
不安装到项目中,临时下载并执行一次性命令。等价于 npx,但更快。
在项目上下文中执行
在 node_modules/.bin 中查找并执行命令,等价于 npx(本地查找优先)。
运行测试
执行 package.json 中的 test 脚本。
设置镜像源
通过命令或 .npmrc 文件配置 registry,加速下载。
允许幽灵依赖(兼容)
将依赖提升到 node_modules 根目录,兼容依赖了幽灵依赖的旧项目。
切换链接方式
控制 node_modules 的链接方式,可切换为兼容 npm/yarn 的结构。
严格模式配置
pnpm 默认严格隔离依赖,这些配置控制严格程度。
查看与修改配置
通过命令行查看和设置 pnpm 配置项。
从 npm/yarn 迁移
从现有的 npm/yarn node_modules 中导入包到 pnpm store,加速首次安装。
打包 tarball
将包打包成 .tgz 文件,不发布到 registry。
安全审计
检查依赖中的已知安全漏洞。
查看依赖许可证
列出所有依赖的开源许可证信息。
重新构建原生模块
重新编译原生模块(如 node-sass、better-sqlite3),常用于切换 Node 版本后。
部署 Workspace 包
从 workspace 项目中部署一个可部署的包,包含其所有依赖。仅限 workspace 根使用。
常用命令对照表
pnpm 与 npm 常用命令的对应关系,方便从 npm 迁移。
pnpm 独有命令
npm 没有对应功能,只有 pnpm 支持的命令。
性能优势说明
pnpm 相比 npm 的核心性能优势和原理。