📜  安装 lerna - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:25:06.132000             🧑  作者: Mango

安装 Lerna

简介

Lerna 是一种管理多个 JavaScript 项目的工具,可以让你将这些项目放在同一仓库中进行管理,而不是分开维护多个仓库。

Lerna 和 Yarn Workspaces 都是解决这种场景下的问题。两者的差异在于,Lerna 是更为通用的解决方案,可以适用于任何项目,而 Yarn Workspaces 则是专门针对使用 Yarn 作为包管理器的项目。

安装

在安装 Lerna 之前,需要确保你已经安装了 Node.js 和 npm。如果你还没有安装,建议先安装一下。

安装 Lerna 可以通过 npm 进行安装:

npm install -g lerna

以上命令会在全局安装 Lerna,你也可以选择在项目中进行安装,这种方式更为安全。

注意:Lerna 要求 Node.js 的版本在 v10.0.0 或更高版本。

使用说明

Lerna 具有很多功能,以下是一些常用的功能及其说明。

初始化一个 Lerna 仓库
lerna init

以上命令会在当前目录创建一个 Lerna 仓库,并生成一个 lerna.json 文件和 packages 目录。lerna.json 文件是 Lerna 的配置文件,packages 目录则是存放子包的目录。你可以通过修改 lerna.json 文件来配置 Lerna。

新建一个子包
lerna create <package-name>

以上命令会在 packages 目录中创建一个名为 的子包。

在子包中安装依赖
lerna add <package> [--dev] [--peer] [--exact] [--registry=<url>]

以上命令会将 安装到当前子包中。--dev 表示安装为开发依赖,--peer 表示安装为同级依赖,--exact 表示精确匹配版本,--registry 表示指定安装源。

在所有子包中安装依赖
lerna bootstrap [--hoist] [--nohoist=<glob>] [--ignore=<glob>] [--use-workspaces]

以上命令会在所有子包中安装依赖。--hoist 表示将公共依赖提升到根目录下的 node_modules 中,--nohoist=<glob> 表示不将匹配到的模块提升,--ignore=<glob> 表示忽略匹配到的模块,--use-workspaces 表示使用 Yarn Workspaces 进行安装。

运行脚本
lerna run <script> [--scope=<package>] [--stream] [--parallel]

以上命令会在所有子包中运行