pnpm 命令功能清单

📦 依赖管理

命令 功能 简写
pnpm install 安装所有依赖 pnpm i
pnpm add <包名> 添加依赖到 dependencies pnpm a
pnpm add -D <包名> 添加开发依赖到 devDependencies pnpm add --save-dev
pnpm add -g <包名> 全局安装包 -
pnpm update 更新依赖 pnpm up
pnpm remove <包名> 移除依赖 pnpm rm
pnpm link 链接本地包 -
pnpm unlink 取消链接 -

🚀 运行脚本

命令 功能 简写
pnpm run <脚本名> 运行 package.json 中的脚本 pnpm <脚本名>
pnpm dev 运行开发服务器 -
pnpm build 构建项目 -
pnpm start 启动项目 -
pnpm preview 预览构建产物 -
pnpm test 运行测试 -
pnpm exec <命令> 在项目范围内执行命令 pnpm x

🔍 查询与查看

命令 功能 简写
pnpm list 列出已安装依赖 pnpm ls
pnpm outdated 查看可更新的包 -
pnpm why <包名> 解释为什么安装某个包 -
pnpm info <包名> 查看包的信息 -
pnpm audit 检查安全漏洞 -

🧹 清理与维护

| 命令 | 功能 |
|----------------------|--------------|--------------------|
| pnpm prune | 移除无关的包 |
| pnpm dedupe | 去重依赖 | pnpm deduplicate |
| pnpm store prune | 清理全局存储中未使用的包 |
| pnpm store path | 查看存储路径 |
| pnpm cache list | 查看缓存 |
| pnpm cache rm <包名> | 清理指定包的缓存 |

🏗️ 工作空间 (Monorepo)

命令 功能 简写
pnpm -F <包名> <命令> 在指定工作区运行命令 pnpm --filter
pnpm -r <命令> 在所有工作区递归执行 pnpm --recursive
pnpm -w <命令> 在工作区根目录执行 pnpm --workspace-root
pnpm import 从其他包管理器导入 lock 文件 -

⚙️ 环境与配置

命令 功能
pnpm env use <版本> 切换 Node.js 版本
pnpm env list 列出已安装的 Node.js 版本
pnpm env add <版本> 安装 Node.js 版本
pnpm config set <key> <value> 设置配置
pnpm config get <key> 获取配置
pnpm config delete <key> 删除配置
pnpm config list 列出所有配置

📊 其他实用命令

命令 功能 简写
pnpm init 初始化新项目 -
pnpm publish 发布包到 npm -
pnpm pack 打包为 tarball -
pnpm doctor 检查环境问题 -
pnpm setup 设置 pnpm 环境 -
pnpm fetch 获取包到存储中但不安装 -
pnpm patch <包名> 创建补丁文件 -
pnpm patch-commit 应用补丁 -

🎯 常用组合示例

bash 复制代码
# 快速开始项目
pnpm i && pnpm dev

# 清理重装(解决依赖问题)
pnpm store prune && rm -rf node_modules && pnpm i

# Monorepo 操作
pnpm -F @myapp/web build    # 只构建 web 包
pnpm -r --parallel dev      # 所有包并行运行 dev

# 全局操作
pnpm add -g pnpm            # 更新 pnpm 自身
pnpm add -g @antfu/ni       # 安装全局工具

💡 快捷技巧

  • pnpm i 可以代替 pnpm install

  • pnpm up 代替 pnpm update

  • pnpm rm 代替 pnpm remove

  • pnpm <script> 可以省略 run(除非名称与内置命令冲突)

这些是 pnpm 最常用的命令,覆盖了日常开发的绝大部分场景。

相关推荐
神明不懂浪漫1 小时前
【第七章】Java中的常用类
java·开发语言·前端·经验分享·笔记
GuWenyue7 小时前
放弃云端API!一套React+WebGPU本地LLM方案,零数据上传、离线可用
前端·人工智能·前端框架
原则猫8 小时前
函数/变量提升
前端
独泪了无痕9 小时前
Vue3 Hooks使用实战解析
前端·vue.js
shawxlee10 小时前
vue3在public下封装config.js自定义配置动态数据,可在打包后直接修改,方便后端部署及后续维护
前端·javascript·经验分享·vue·团队开发·js·项目优化
用户0595401744611 小时前
把记忆存储的回归测试从手工换成 Playwright + GitHub Actions,线上缺陷降低 80%
前端·css
触底反弹11 小时前
🚀 从 DOM0 级到 React 合成事件:前端事件监听的 20 年演进史
前端·react.js·面试
kyriewen11 小时前
我给前端项目的接口请求套了6层保护——才发现以前一直在裸奔
前端·javascript·面试
颜酱11 小时前
04 | 召回前置准备:搭好召回所需的四个数据库
前端·人工智能·后端
郝亚军12 小时前
如何安装webstorm、Node.js和vue CLI
前端·javascript·vue.js