pnpm monorepo 管理项目


pnpm monorepo 管理项目

提示

monorepo 是管理项目代码的一个方式,指在一个项目仓库(repo)中管理多个模块/包(package) vue3 源码采用 monorepo 方式进行管理,将模块拆分到 package 目录中

  • 一个仓库可以维护多个模块,不用导出找仓库
  • 方便版本管理和依赖管理,模块之间的引用,调用都非常方便

vue3 源码使用的是 pnpm workspace 来实现 monorepo

pnpm

  • 集中存储
  • monorepo
  • 依赖隔离

monorepo

  • 解决代码重复的维护
  • 解决了需要私服发布和管理 nnpm

使用方式

  1. 项目根目录新建 pnpm-workspace.yaml 文件
packages:
  # all packages in subdirs of packages/ and components/
  - "packages/**"
  1. @zero-admin/utils 安装 到 @zero-admin/chart 执行命令pnpm i @zero-admin/utils -r --filter @zero-admin/chart
  2. @zero-admin/chart 安装到根项目 package.json 文件中,执行命令 pnpm i @zero-admin/chart -w