当前位置:
首页 > temp > JavaScript教程 >
-
lerna 常用命令
lerna 介绍
lerna 处理机构
固定模式(fixed)
所有包是统一的版本号,每次升级,所有包版本统一更新,不管这个包内容改变与否
具体体现在,lerna
的配置文件 lerna.json
中永远会存在一个确定版本号:
{
"version": "0.0.1"
}
典型例子: babel
、vue
独立模式(independent)
每个包是单独的版本号,每次lerna 触发发布命令,每个包的版本都会单独变化
具体体现在,lerna
的配置文件 lerna.json
中没有一个确定版本号,而是:
{
"version": "independent"
}
lerna 安装
npm install lerna -g
lerna -v
lerna 初始化
代码规范采用lerna
提供的规范结构的话:
# 默认固定模式
lerna init
# 要采用独立模式的话
lerna init -i
# lerna init --independent
生成的代码结构
└── lerna/
├── packages/
├── lerna.json
└── package.json
如果代码已经存在,则只需要在项目下创建lerna.json
并补充相关字段
{
"useWorkspaces": true, // 使用 workspaces 配置。此项为 true 的话,将使用 package.json 的 "workspaces",下面的 "packages" 字段将不生效
"version": "0.1.0", // 所有包版本号,独立模式-"independent"
"npmClient": "cnpm", // npm client,可设置为 cnpm、yarn 等
"packages": [ // 包所在目录,可指定多个
"packages/*"
],
"command": { // lerna 命令相关配置
"publish": { // 发布相关
"ignoreChanges": [ // 指定文件或目录的变更,不触发 publish
".gitignore",
"*.log",
"*.md"
]
},
"bootstrap": { // bootstrap 相关
"ignore": "npm-*", // 不受 bootstrap 影响的包
"npmClientArgs": [ // bootstr 执行参数
"--no-package-lock"
]
}
}
}
lerna 相关命令
lerna官方文档https://lerna.js.org/
初始化
创建一个新的
lerna
仓库或者将现有的仓库使用lerna
管理
lerna init # -i/--independent
Publish
发布包
lerna publish
Bootstrap
把所有包安装到根
node_modules
lerna bootstrap
Run
运行每个包中的
script
命令
lerna run <script> --[...args]
Exe
单独运行某个包下的
script
命令
lerna exec -- <command> [...args]
# example
$ lerna exec -- rm -rf ./node_modules
$ lerna exec -- protractor conf.js
Add
安装本地或者远程的包
lerna add <package>[@version] [--dev] [--exact] [--peer]
#--dev 将新包添加到devDependencies而不是dependencies.
#--exact 添加具有确切版本(例如1.0.1)而不是默认^semver 范围(例如^1.0.1)的新包。
#--peer 将新包添加到peerDependencies而不是dependencies.
#将 module-1 包添加到 'prefix-' 前缀文件夹中的包中
lerna add module-1 packages/prefix-*
#将模块 1 安装到模块 2
lerna add module-1 --scope=module-2
#在 devDependencies 中将 module-1 安装到 module-2
lerna add module-1 --scope=module-2 --dev
#在 peerDependencies 中安装 module-1 到 module-2
lerna add module-1 --scope=module-2 --peer
#在除module-1之外的所有模块中安装module-1
lerna add module-1
#在所有模块中安装 babel-core
lerna add babel-core
原文地址: https://kspf.xyz/archives/136
栏目列表
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
SQL Server -- 解决存储过程传入参数作为s
关于JS定时器的整理
JS中使用Promise.all控制所有的异步请求都完
js中字符串的方法
import-local执行流程与node模块路径解析流程
检测数据类型的四种方法
js中数组的方法,32种方法
前端操作方法
数据类型
window.localStorage.setItem 和 localStorage.setIte
如何完美解决前端数字计算精度丢失与数