Lerna github 地址:www.lernajs.cn/
npm 项目初始化流程
- 初始化 npm 项目
npm init -y - 安装 lerna
npm install -g lerna - 初始化多包配置
lerna init
创建 package
-
创建 package
lerna create pkgName [location]location 表示要存放的目录。
-
安装 package 依赖
lerna add dependencyName [pkgPath]pkgPath表示要安装依赖的包路径,如果没有输入该路径,则 lerna 会默认对所有的包都安装dependencyName。 -
清空所有包的依赖
lerna clean -
连接依赖
lerna link示例:在
@web-cli/core中写入@web-cli/utils依赖,然后使用lerna link会自动把该依赖链接到本地包 -
给所有包安装在
package.json标明的依赖lerna bootstrap
npm 包开发和测试
-
执行 shell 脚本
-
lerna exec -- [command] [..args]会为每个包都执行这个命令。
lerna exec -- rm -rf ./node_modules -
lerna exec -- scope myPackage -- [command] [..args]为
myPackage这个包执行脚本命令。
-
-
执行 npm 命令
lerna run示例:
lerna run test
发布上线
- 版本号变更
lerna versionlerna version 1.0.1输入具体的版本号直接更新lerna version [major | minor | patch]对应给第一、第二、第三位版本加1更新 注意:要lerna version成功,必须要把代码git add和git commit。
- 查看有更改的包
lerna changed - 计算有变更的内容
lerna diff [package-name] - 发布上线
lerna publishlerna publish from-package可以避免有时检测不到更改的包。