当前位置: 首页 > article >正文

pnpm 实现 Monorepo 一些操作命令

Monorepo(单一存储库)

单一存储库(也称为多包存储库、多项目存储库或单体存储库)

Monorepo 的意思是在版本控制系统的单个代码库里包含了许多项目的代码。这些项目虽然有可能是相关的,但通常在逻辑上是独立的,并由不同的团队维护。

有些公司将所有代码存储在一个代码库中,由所有人共享,因此Monorepos可以非常大。例如,理论上谷歌拥有有史以来最大的代码库,每天有成百上千次提交,整个代码库超过80 TB。其他已知运营大型单一代码库的公司还有微软、Facebook和Twitter。

Monorepos有时被称为单体代码库(monolithic repositories),但不应该与*单体架构(monolithic architecture)*相混淆,单体架构是一种用于编写自包含应用程序的软件开发实践。这方面的一个例子就是Ruby on Rails,它可以处理Web、API和后端工作。

操作步骤

  1. 在任意层级的子工程目录中,运行此命令,包会安装在工作空间的根目录里,这里是在开发依赖中
$ pnpm add lodash-es -Dw
  1. 在任意层级的子工程目录中,运行此命令,包会安装在工作空间的根目录里,这里是在生产依赖中
$ pnpm add dz-transform -w
  1. 在任意层级的子工程目录中,运行此命令,包会安装在指定的子工程目录下,这里是在生产依赖中
$ pnpm add qs --filter @dztest/pkg-one
  1. 在任意层级的子工程目录中,运行此命令,包会安装在指定的子工程目录下,这里是在开发依赖中
$ pnpm add @types/qs --filter @dztest/pkg-one -D
  1. pnpm -r, --recursive
    别名:m, multi, recursive, -r

与以下命令一起使用时,在工作区的每个项目中运行命令:install

  1. 基于 pnpm 提供的 workspace:协议,可以方便的在 packages 内部进行互相引用
$ pnpm add @dztest/pkg-one --filter @dztest/pkg-two

参考

https://pnpm.io/zh/workspaces

https://pnpm.io/zh/pnpm-workspace_yaml

https://qifutao.blog.csdn.net/article/details/124823381


http://www.kler.cn/a/16153.html

相关文章:

  • Java 异常处理、日志
  • Linux od命令
  • ESP32-CAM:TinyML 图像分类——水果与蔬菜
  • 【群智能算法】一种改进的蜣螂优化算法IDBO[2]【Matlab代码#18】
  • 浅谈Kubernetes集群外部通信—Ingress方式
  • 【Java笔试强训 2】
  • Python 练习实例希望这些例子可以帮助您
  • 网络编程 总结二
  • sql注入(三)绕过方法及防御手段
  • 【软件测试】自动化测试日志问题该怎么解决?测试老鸟总结方案...
  • javascript 设计模式
  • java版本企业电子招投标采购系统之项目说明和开发类型源码
  • 【KVM虚拟化】· 命令行KVM安装linux
  • PostgreSQL14.6主从模式配置
  • python工具方法 39 大图裁剪为小图|小图还原成大图(含生成大图伪标签)
  • Ae:画笔面板
  • 机器学习算法系列(五)-- 支持向量机(SVM)
  • ETL工具 - Kettle 介绍及基本使用
  • qperf测试
  • python cms建站教程:Wagtail建站(二、修改主页与自定义后台管理)