title | postSlug | featured | draft | tags | description | pubDatetime | updateTime | |
---|---|---|---|---|---|---|---|---|
记录一些pnpm的workspace用法 |
pnpm-workspace-command |
false |
false |
|
使用pnpm自带的workspace管理多包仓库,以下是我使用过程中的一些经验。这里记录下来,以供以后查找。 |
2024-02-23 15:59:22 UTC |
2024-03-02 15:49:07 UTC |
使用 pnpm 自带的 workspace 管理多包仓库,以下是我使用过程中的一些经验。这里记录下来,以供以后查找。
|-- packages
| |-- a
| | |-- src
| | |-- package.json
| |-- b
| | |-- src
| | |-- package.json
| |-- c
| |-- src
| |-- package.json
|-- package.json
|-- pnpm-workspace.yaml
{
"name": "p"
}
packages:
- 'packages/*'
{
"name": "@p/a"
}
{
"name": "@p/b"
}
{
"name": "c"
}
在相对路径中执行命令。详细说明
# 执行a包的a包的build命令
pnpm -C packages/a build
在工作空间根目录中执行命令。详细说明
每个包都执行命令。详细说明
# a,b,c三个包分别执行publish命令
pnpm publish -r
筛选特定的包名。详细说明
# 在c包中安装lodash作为依赖
pnpm add lodash --filter c
# 执行c包的build命令
pnpm -F c build
仅在工作区内执行相关命令。
# 在@p/b的包中,安装工作空间中的@p/a包作为依赖
pnpm add @p/a -F @p/b --workspace