以下是 pnpm 的核心命令和使用指南,涵盖从安装依赖到项目管理的常见操作:
1. 基础命令
(1) 安装依赖
pnpm install # 安装 package.json 中的所有依赖
pnpm install <包名> # 安装指定包(自动添加到 dependencies)
pnpm install <包名>@1.0.0 # 指定版本安装
(2) 添加依赖
pnpm add <包名> # 添加开发依赖(保存到 devDependencies)
pnpm add <包名> --save-dev # 显式添加开发依赖
pnpm add <包名> --save-peer # 添加 peerDependencies
(3) 移除依赖
pnpm remove <包名> # 移除依赖并更新 package.json
pnpm uninstall <包名> # 同上(旧命令)
(4) 查看依赖
pnpm list # 查看所有已安装的依赖(包括全局和项目依赖)
pnpm list --depth=0 # 仅显示顶层依赖
pnpm why <包名> # 查看为何需要某个依赖
pnpm__34">2. pnpm 特有功能
(1) 硬链接与存储管理
(2) 快速运行脚本
pnpm run <脚本名> # 执行 npm scripts(如 pnpm run dev)
pnpm run lint -- --fix # 传递参数给脚本
(3) 查看版本和配置
pnpm -v # 查看 pnpm 版本
pnpm config list # 查看当前配置
pnpm config set <key> <value> # 修改配置(如设置镜像源)
3. 高级用法
(1) 全局安装
pnpm add <包名> -g # 全局安装工具(如 pnpm itself)
pnpm global add <包名> # 同上
pnpm exec <命令> # 使用全局安装的工具执行命令(如 pnpm exec eslint .)
(2) 查看依赖树
pnpm depgraph # 生成依赖关系图(可视化需配合工具如 `pnpm depviz`)
(3) 修复依赖冲突
pnpm dedupe # 自动修复重复依赖
pnpm check # 检查依赖是否完整
pnpm_vs_npmyarn__78">4. pnpm vs npm/yarn 对比
命令 | pnpm | npm/yarn |
---|---|---|
安装依赖 | 更快、占用更小磁盘 | 传统方式,依赖独立存储 |
添加依赖 | 支持 --save-peer 等选项 | 语法略有不同 |
移除依赖 | 自动清理残留文件 | 需手动删除 |
5. 常见问题解决
(1) 权限问题
# Linux/macOS
sudo pnpm install# Windows(推荐使用 PowerShell)
pnpm install --unsafe-perm
(2) 清除缓存
pnpm cache clean --force
(3) 查看详细日志
pnpm install --verbose # 显示安装过程的详细日志
6. 配置文件
- 项目配置:在项目根目录创建
pnpmfile.js
自定义构建逻辑。 - 全局配置:修改
~/.pnpmrc
文件(如设置镜像源):registry=https://registry.npm.taobao.org
总结
如果有具体需求(如多包管理、CI/CD 集成),可以进一步探讨!