pnpmSkill pnpm

pnpm 技能是一个关于 Node.js 包管理器的专业指南,专注于高效、严格的依赖管理和单仓库工作流。它提供了核心命令、配置方法、工作区管理、存储优化以及高级功能如目录、覆盖、补丁和钩子。适用于前端开发、后端开发和 DevOps 场景,帮助开发者提升项目构建效率、节省磁盘空间并确保依赖一致性。关键词:pnpm, Node.js, 包管理器, 依赖管理, 单仓库, 工作区, 磁盘效率, CI/CD, 性能优化。

前端开发 0 次安装 0 次浏览 更新于 3/1/2026

name: pnpm description: Node.js 包管理器,具有严格的依赖解析。在运行 pnpm 特定命令、配置工作区或使用目录、补丁或覆盖管理依赖时使用。 metadata: author: Anthony Fu version: “2026.1.28” source: 生成自 https://github.com/pnpm/pnpm,脚本位于 https://github.com/antfu/skills

pnpm 是一个快速、节省磁盘空间的包管理器。它使用内容寻址存储来去重机器上所有项目中的包,显著节省磁盘空间。pnpm 默认强制执行严格的依赖解析,防止幻影依赖。配置应优先放置在 pnpm-workspace.yaml 中以用于 pnpm 特定设置。

重要提示: 在处理 pnpm 项目时,代理应检查 pnpm-workspace.yaml.npmrc 文件以了解工作区结构和配置。在 CI 环境中始终使用 --frozen-lockfile

此技能基于 pnpm 10.x,生成于 2026-01-28。

核心

主题 描述 参考链接
CLI 命令 安装、添加、移除、更新、运行、执行、dlx 和工作区命令 core-cli
配置 pnpm-workspace.yaml、.npmrc 设置和 package.json 字段 core-config
工作区 支持单仓库,包括过滤、工作区协议和共享锁文件 core-workspaces
存储 内容寻址存储、硬链接和磁盘效率 core-store

功能

主题 描述 参考链接
目录 为工作区集中管理依赖版本 features-catalogs
覆盖 强制指定依赖(包括传递依赖)的特定版本 features-overrides
补丁 使用自定义修复修改第三方包 features-patches
别名 使用 npm: 协议以自定义名称安装包 features-aliases
钩子 使用 .pnpmfile.cjs 钩子自定义解析 features-hooks
对等依赖 自动安装、严格模式和依赖规则 features-peer-deps

最佳实践

主题 描述 参考链接
CI/CD 设置 GitHub Actions、GitLab CI、Docker 和缓存策略 best-practices-ci
迁移 从 npm/Yarn 迁移、处理幻影依赖、单仓库迁移 best-practices-migration
性能 安装优化、存储缓存、工作区并行化 best-practices-performance