하나의 대규모 저장소(repository)에 여러 프로젝트나 애플리케이션의 코드를 포함하는 소프트웨어 개발 방식

| 특징/속성 | 모노리틱 아키텍처 | 멀티 레포지토리 | 모노 레포지토리 |
|---|---|---|---|
| 개념적 일관성 | 높음 | 낮음 | 높음 |
| 코드 공유 및 재사용 | 용이 | 어려움 | 용이 |
| 빌드 및 배포 통합 | 용이 | 어려움 | 용이 |
| 프로젝트 간 의존성 관리 | 용이 | 어려움 | 용이 |
| 통합된 버전 관리 | 용이 | 어려움 | 용이 |
| 협업과 통합 테스트 | 편리 | 어려움 | 편리 |
| 유연성 | 낮음 | ||
| (하나의 기술 스택) | 높음 | ||
| (다양한 기술 스택 사용 가능) | 높음 | ||
| (다양한 기술 스택 사용 가능) | |||
| 큰 프로젝트에서 관리 용이성 | 어려움 (커다란 코드베이스 관리 어려움) | 어려움 (다수의 저장소 관리 어려움) | 편리 |
| 도구 및 자동화 지원 | 풍부한 지원 | 일부 도구들은 멀티레포注意 | 일부 도구들은 모노레포지토리에 적합함 |
모노레포 구현을 위한 도구로는 대표적으로 Lerna, Turberepo, Nx 와 같은 것들이 있다.
특징:
장점:
단점:
특징: