使用lerna构建monorepo

本文详细介绍了如何使用Lerna构建和管理Monorepo。内容包括Monorepo的概念,Lerna的介绍和作用,初始化项目,执行package script,包依赖管理,特别是公共包的处理,以及版本控制和发布流程。通过Lerna,可以更有效地管理和协同前端多项目或微服务。
摘要由CSDN通过智能技术生成

使用lerna构建monorepo

monorepo是什么?

monorepo就是在一个git repository里面管理多个packages或者项目

在实际开发使用中,在哪些场景下可能你会想要使用这种代码管理的方式呢?

例如,你们团队是一个以全栈开发为目标的团队,可以将前后端的项目放在一个repository里面进行管理

又例如,如果你是想使用微服务的,无论是后端微服务还是前端微服务(Single-SPA)之类的,你就可以在一个repository里面管理多个相关的项目

Lerna

monorepo是一种代码管理的概念,有很多工具都可以帮助你去实现,这里介绍的是Lerna

那么Lerna是什么呢?

官方解释是:

Lerna is a tool that optimizes the workflow around managing multi-package repositories with git and npm.

Lerna在提供了一些对多个package进行操作的命令之外,还提供了一些和对项目发布工作流程的一些支持。

注意:我们这里使用的lerna版本的3

初始化项目

要从一个新项目开始还是从已有项目出发,都可以使用lerna去创建monorepo的开发模式

lerna提供了两种方式去管理项目,一种是Fixed/Locked mode (default),另一种是Independent mode

区别就是,Fixed/Locked mode的版本控制是整一个repository作为一个整体的,而Independent mode则每个package的版本控制是独立的

我们这里介绍的是Independent mode的形式

执行下面命令对lerna进行初始化

npx lerna init --independent

会生成一个lerna.json的文件,这就是lerna的配置文件,内容如下

{
   
  "packages": [
    "packages/*"
  ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值