pnpm monorepo 联调:告别 --global 参数
date
Oct 19, 2025
slug
pnpm-monorepo-debug-2
status
Published
tags
Technology
summary
pnpm 10.x 版本对 link 命令进行了重要简化:取消了 --global 参数,现在直接使用
pnpm link 即可完成全局链接。type
Post
前言
时间过去了一段时间,pnpm 也在不断演进。最近在使用过程中,我发现了一个有趣的变化:执行
pnpm link 时不再需要添加 --global 参数,同时 pnpm 会自动创建 pnpm-workspace.yaml 文件。这引起了我的好奇心,决定深入研究一下 pnpm 10.x 版本中 link 功能的最新变化。pnpm 10.x 中关于 link 的变更
最大的变化就是 去除了
--global 参数。之前我们这样操作:
现在直接:
看起来是小改动,但其实是把之前的
pnpm link --global 的行为直接变成了 pnpm link 的默认行为。从官方文档也能看出来,现在的
pnpm link 描述和之前 9.x 版本的 pnpm link --global 完全一样。

取消链接还是用
pnpm unlink:实际使用体验
在库中执行 link
现在在基础库中执行
pnpm link,会直接链接到全局:在项目中链接库
在项目中链接也更直接了:
自动生成的 workspace 配置
这是个新发现,链接完成后,pnpm 会自动在项目根目录生成
pnpm-workspace.yaml:这样就能清楚地看到当前项目链接了哪些包,比之前透明多了。
多库联调的改进
之前需要给每个库都加
--global,现在直接:对于
workspace:* 这种依赖,pnpm 还是会自动处理,和之前一样智能。前后对比
ㅤ | pnpm 9.x | pnpm 10.x |
全局链接 | pnpm link --global | pnpm link |
项目链接 | pnpm link --global <pkg> | pnpm link <pkg> |
workspace 配置 | 手动管理 | 自动生成 |
操作复杂度 | 需要记住加 --global | 更简单直接 |
总结
pnpm 10.x 的这个改动虽然看起来不大,但确实让联调操作更简单了。不用再记那个
--global 参数,直接 pnpm link 就完事。加上自动生成的 workspace 配置文件,整个链接状态也更透明了。如果你还在用旧版本,建议升级试试,体验确实有提升。