我正在使用使用lerna的monorepo。此仓库在根package.json处声明了file:
协议包:
"dependencies": {
"moduleA": "file:packages/moduleA,
"moduleB": "file:packages/moduleB
}
此monorepo根目录下的lerna.json具有标准的默认包文件夹glob模式:
{
"packages": [
"packages/*"
],
"version": "0.0.0"
}
那为什么要这样做?我没有看到official documentation中提到将lerna管理的leaf packages
显式添加到package.json的任何地方:
lerna.json中的packages配置是与包含package.json的目录匹配的glob列表,这是lerna识别“叶子”包的方式(与“ root” package.json相比,后者旨在管理开发人员整个仓库的依赖项和脚本)。
如果lerna是learn ls
文件夹中的leaf packages
的{{1}}感知者,为什么在根package.json中显式声明packages
作为依赖项?
请注意,我正在工作的团队管理着几个monorepos,一个monorepo在根package.json中没有依赖关系,但是这个monorepo可以。因此,背后有意图,我正在尝试弄清意图是什么。
。