pnpm常用命令;为什么使用pnpm?

为什么使用pnpm,可话费5分钟详细阅读本篇博文

常用命令

bash 复制代码
# 安装所有依赖
pnpm i

# 示例:卸载 lodash
pnpm remove lodash

# 示例:安装 Vue 的 next 标签版本
pnpm add vue@next

# 最新版本
pnpm add lodash@latest

# 清空缓存
pnpm store prune

以下是 pnpm 的常用命令总结,适用于日常开发:


1. 初始化项目

bash 复制代码
pnpm init  # 创建 package.json

2. 安装依赖

bash 复制代码
pnpm install          # 安装所有依赖(可简写为 `pnpm i`)
pnpm add <package>    # 安装生产依赖(如 `pnpm add lodash`)
pnpm add -D <package> # 安装开发依赖(如 `pnpm add -D typescript`)
pnpm add -g <package> # 全局安装(如 `pnpm add -g nodemon`)

3. 更新依赖

bash 复制代码
pnpm update             # 更新所有依赖
pnpm update <package>   # 更新指定包
pnpm up -g <package>    # 更新全局包

4. 移除依赖

bash 复制代码
pnpm remove <package>    # 移除依赖(可简写为 `pnpm rm`)
pnpm remove -g <package> # 移除全局包

5. 运行脚本

bash 复制代码
pnpm run <script>    # 运行 package.json 中的脚本(如 `pnpm run build`)
pnpm <script>        # 简写形式(若脚本名不与内置命令冲突)
pnpm test            # 等同于 `pnpm run test`

6. Monorepo 支持(Workspaces)

bash 复制代码
pnpm -F <package> <command>  # 在指定子包中运行命令(如 `pnpm -F core build`)
pnpm --filter <package> add <pkg>  # 为指定子包添加依赖
pnpm -r run <script>  # 在所有子包中运行脚本(如 `pnpm -r run test`)

7. 查看依赖

bash 复制代码
pnpm list            # 查看项目依赖树
pnpm list -g         # 查看全局安装的包
pnpm why <package>   # 检查包被哪个依赖引入

8. 清理与维护

bash 复制代码
pnpm store prune     # 清除未被引用的包(释放磁盘空间)
pnpm outdated        # 检查过时的依赖

9. 执行命令(类似 npx)

bash 复制代码
pnpm dlx <command>   # 临时执行包(如 `pnpm dlx create-react-app my-app`)

10. 环境管理

bash 复制代码
pnpm env use --global lts # 全局切换到 Node.js LTS 版本

常用参数

参数 作用
-C <path> 指定工作目录
--prod 仅安装生产依赖(忽略 devDependencies)
--ignore-scripts 跳过安装时的脚本执行

💡 提示

  • 速度快、磁盘节省 :pnpm 通过硬链接共享依赖,比 npm/yarn 更高效。
  • 严格依赖 :默认使用非平铺的 node_modules,避免幽灵依赖。
  • 工作空间 :Monorepo 项目推荐用 pnpm workspaces 管理。