pnpm 依赖管理:安装、添加、更新与移除
先按照项目的 packageManager 使用约定的 pnpm 版本,再进入含 package.json 的项目目录。工具尚未安装时,查看 pnpm 安装与升级。下面的包名是示例,按项目实际需要选择执行。
安装现有依赖或添加新包
克隆已有项目后,安装其声明的依赖:
sh
pnpm install需要严格沿用已提交的 pnpm-lock.yaml,例如构建或 CI 验证时:
sh
pnpm install --frozen-lockfile冻结安装不会更新锁文件;声明与锁文件不一致时应先查明原因,不能靠删锁文件或关闭校验掩盖差异。工作区项目还需确认命令作用范围。详见 pnpm install。
添加一个新依赖使用 pnpm add,不要与安装整个项目混淆:
sh
pnpm add dayjs # 加入 dependencies
pnpm add -D typescript # 加入 devDependencies
pnpm add -g http-server # 安装个人全局命令行工具| 类型 | 选择依据 |
|---|---|
dependencies | 应用运行时需要的包 |
devDependencies | 开发、测试或构建工具;执行生产构建时也可能需要它们 |
| 全局工具 | 从终端直接使用的个人工具,不代替项目自身的依赖声明 |
add 会更新相应依赖声明和锁文件;完成后检查 package.json、pnpm-lock.yaml 的差异。版本、来源及更多选项见 pnpm add。
更新依赖
sh
pnpm up dayjs # 按 package.json 的版本范围更新
pnpm up # 按各自版本范围更新全部依赖pnpm up dayjs --latest 会尝试更新到最新版本,可能跨越原来的主版本范围,应先确认迁移要求。更新后运行项目已有的测试或构建,并审查依赖声明与锁文件;这些操作与 pnpm self-update 更新包管理器本身不同。详见 pnpm update。
移除包
sh
pnpm remove dayjs # 移除项目依赖及对应声明
pnpm remove -g http-server # 移除全局工具移除后还要删除源码中对应的 import 或配置引用,再运行项目检查。不要只手工删除 node_modules 下的目录,那不会同步维护依赖声明和锁文件。更多范围选项见 pnpm remove。