跳到主要内容
版本:10.x

pnpm -r, --recursive

别名:m, multi, recursive, <command> -r

在工作区的每个项目中运行命令时使用的命令包括:

  • install
  • list
  • outdated
  • publish
  • rebuild
  • remove
  • unlink
  • update
  • why

在工作区的每个项目(根项目除外)中运行命令时使用的命令包括:

  • exec
  • run
  • test
  • add

如果你想在运行脚本时包含根项目,请将 includeWorkspaceRoot 设置设为 true

使用示例:

pnpm -r publish

选项

  • 默认值:false
  • 类型:true, false, deep

将单仓库中本地可用的工作区包链接到 node_modules 中,而不是从注册表重新下载。 这模拟了类似于 yarn workspaces 的功能。

当设置为 deep 时,本地包也可以链接到子依赖项。

请注意,建议改用 pnpm-workspace.yaml 设置此选项,以在所有环境中强制相同的行为。 此选项仅用于必要时进行覆盖。

--workspace-concurrency

  • 默认值:4
  • 类型:数字

设置同时运行的最大任务数。若需无限并发请使用 Infinity

你可以将 workspace-concurrency 设为 <= 0,此时将根据主机核心数计算为:max(1, (核心数) - abs(workspace-concurrency))

--[no-]bail

  • 默认值:true
  • 类型:布尔值

若为 true,当任务抛出错误时停止。

此配置不影响退出码。 即使使用 --no-bail,所有任务都会完成,但如果任何任务失败,命令将以非零退出码退出。

示例(在每个包中运行测试,即使其中一个失败也继续):

pnpm -r --no-bail test

--[no-]sort

  • 默认值:true
  • 类型:布尔值

当为 true 时,包按拓扑顺序排序(先依赖项)。 使用 --no-sort 禁用。

示例:

pnpm -r --no-sort test

--reverse

  • 默认值:false
  • 类型:布尔值

当为 true 时,反转包的顺序。

pnpm -r --reverse run clean

--filter <包选择器>

了解更多关于过滤的内容