Что такое Монорепозиторий
Единый репозиторий для всех проектов
Монорепозиторий (Monorepo) — это стратегия управления кодом, при которой несколько проектов хранятся в одном репозитории.
Преимущества
- Единая кодовая база
- Атомарные изменения между проектами
- Переиспользование кода
- Упрощённое управление зависимостями
- Единые стандарты и линтеры
Инструменты
- Nx — для Angular, React, Node.js
- Turborepo — от Vercel
- Lerna — для npm-пакетов
- Bazel — от Google
- Rush — от Microsoft
Примеры компаний
- Google (весь код в одном репо)
- Meta (Facebook, Instagram)
- Microsoft (Windows)
- Uber
Когда использовать
- Микросервисы одной команды
- Фронтенд + бэкенд + shared-библиотеки
- Несколько связанных продуктов