a monorepo
是一个代码存储库,具有包含多个项目的版本控件。尽管它们可以连接,但这些举措在概念上经常是不同的,并由多个团队管理。一些企业将其所有源代码保存在一个公共存储库中。
https://monorepo.tools/
这是八个广泛使用的单波公用事业。
1.匆忙
RUSH:Web的可扩展MonorePo管理器
2. Turborepo
Turbo是一个增量捆绑器,并为JavaScript和Typescript进行了优化,用Rust编写。
3.纱线工作区
工作区是设置您的软件包体系结构的新方法,默认情况下从纱线1.0开始。它允许您以这样的方式设置多个软件包,您只需要运行纱线一次安装即可在单个通行证中安装所有软件包
Yarn Workspaces
4. YALC
YALC充当非常简单的本地存储库,您想在本地环境中共享本地开发的软件包
Yalc
5.线
Lerna是用于管理具有多个软件包的JavaScript项目的工具。 Lerna管理MonorePos,该项目可以保存包含多个软件包本身的项目。 MonorePos可能具有挑战性,因为顺序构建和发布单个软件包需要很长时间。
6. NPM工作区
Workspaces是一个通用术语,它是指NPM CLI中的一组功能,该功能为从本地文件系统中的多个顶部级别,root软件包内部从本地文件系统管理多个软件包提供了支持。
。7. PNPM
什么是PNPM? PNPM是节点的替代软件包管理器。代表表现npm的JS。 PNPM的主要目的是将所有软件包放在全球(集中式)商店中,并在其他项目的需要时使用它们来使用它们。
8. NX
nx是一个框架,可让您使用最流行的现代前端框架(如React和Angular)以及后端和后端(如Nestjs或Express)进行架构,测试和构建项目。为了实现这一目标,NX配备了大型工具集,可简化您的MonorePo管理。