lerna简介

324 阅读1分钟

我们发现自己开发脚手架时的一些痛点

1. 重复操作

  • 多package本地link
  • 多package依赖安装
  • 多package单元测试
  • 多package代码提交
  • 多package 代码 发布

2.版本一致性

  • 发布时版本一致性
  • 发布后相互依赖升级 总的来说,项目的package 越多,项目管理的复杂度越大,lerna的价值就来源于此 那么lerna到底是什么呢?lerna官网上是这样描述的。

A tool for managing JavaScript projects with multiple packages. 翻译一下就是,lerna是一个基于git+npm 项目管理的工具

概要

lerna是GitHub上面开源的一款js代码库管理软件, 用来对一系列相互耦合比较大、又相互独立的js git库进行管理。解决各个库之间修改混乱、难以跟踪的问题。lerna可以优化这种情形下的工作流

对于一些功能比较全的库,我们往往会把各个小功能拆分成独立的npm库,他们直接有比较强的依赖关系。比如:Babel、React等开源代码都是按照这种方式进行处理的。 优势

  • 大量减少重复操作
  • 提升操作的基本化

lerna是架构优化的产物,他揭露了一个架构真理:项目复杂度提升后,就需要对项目进行架构优化,架构优化的目的往往是已效能为核心 官网

官网:lerna.js.org/

接下来就带大家来看看lerna脚手架的开发流程 (重点)

lerna.png