📄️ 运行任务
单仓项目可能拥有数百甚至数千个项目,因此能够针对所有(或部分)项目运行 npm 脚本非常重要。
📄️ 缓存任务结果
在运行任务、缓存等方面,Lerna 和 Nx 可以互换使用。当我们说“Lerna 可以缓存”时,
📄️ 共享您的缓存
Lerna 提供的计算缓存可以分布在多台机器上。您可以构建一个实现
📄️ 探索项目图
为了让 Lerna(和 Nx)能够快速准确地运行任务,它会创建存储库中所有项目之间依赖关系的图。直观地探索此图有助于理解 Lerna 为什么以某种方式运行,并获得代码架构的高级视图。
📄️ 分发任务执行
Lerna 通过缓存和 --since 标志加快了您的平均 CI 时间。但这两个功能都不能解决最坏情况。当存储库核心发生更改并且每个任务都需要在 CI 中运行时,提高性能的唯一方法是添加更多代理作业并有效地并行化任务。
📄️ 版本和发布
Lerna 可以递增包的版本以及将包发布到 NPM,并且它提供了多种选项来确保可以适应任何工作流程。
📄️ 编辑器集成
Nx Console 在 VS Code 侧边栏中显示所有项目的 npm 脚本,并允许您单击一下即可运行它们或在编辑器中打开脚本定义。
📄️ 工作区监视
工作区监视从 Lerna 6.4.0 开始可用。