从Lerna迁移至PNPM:Lerna bootstrap/clean命令的等效替代方案
Lerna 迁移至 PNPM:等效命令替代方案
你正在使用的 Lerna 命令可以直接用 PNPM 的内置命令或默认行为替代,具体对应关系如下:
1. lerna bootstrap --hoist 等效命令
Lerna 的这个命令作用是安装所有工作区包的依赖,将公共依赖提升到根目录的 node_modules,同时链接内部包之间的引用。
在 PNPM 中不需要单独执行 bootstrap 命令,直接在工作区根目录运行:
pnpm install
- PNPM 会自动识别工作区配置(根目录的
pnpm-workspace.yaml),完成所有包的依赖安装与内部包链接。 - 默认情况下,PNPM 会自动将公共依赖提升到根
node_modules(和 Lerna--hoist效果一致),若需精细控制,可在pnpmrc中调整hoist相关配置。
另外,原有的 postinstall 脚本可修改为直接调用 pnpm install,或直接移除——因为 PNPM 在执行安装命令后会自动处理工作区依赖,无需额外的 postinstall 步骤。
2. lerna clean -y 等效命令
Lerna 的这个命令用于跳过确认,删除所有工作区包的 node_modules 目录。
对应的 PNPM 命令是:
pnpm clean
- 该命令会递归删除工作区所有包(包括根目录)的
node_modules,默认无需确认直接执行,和lerna clean -y效果完全一致。
内容的提问来源于stack exchange,提问作者Hamzah Hameed
相关产品推荐
相关产品推荐

