Par Anonyme (non vérifié) , 29 avril 2026

Le débat éternel

Un monorepo héberge plusieurs projets dans un seul dépôt; multi-repo les sépare. Les deux livrent des produits à l'échelle.

Ce que vous donne le monorepo

  • Commits atomiques cross-projets.
  • Source unique de vérité.
  • Refactoring à grande échelle plus facile.
  • Tooling unifié.

Ce que vous coûte le monorepo

  • La taille du repo grandit sans borne.
  • Investissement en tooling : Bazel, Nx, Turborepo.
  • La granularité des permissions est plus difficile.
  • CI doit faire des builds affected-only.

Ce que vous donne multi-repo

  • Cadence de release indépendante.
  • Repos plus petits et focalisés.
  • Frontières naturelles de permissions.
  • Isolation des pannes.

Ce que vous coûte multi-repo

  • Les changements cross-repo nécessitent des PRs coordonnés.
  • Les bibliothèques partagées deviennent des problèmes de "diamant de versions".
  • Le tooling dérive.
  • La découvrabilité souffre.

Tooling essentiel pour monorepo

git sparse-checkout set apps/web shared/ui
git clone --filter=blob:none <url>
npx nx affected:test --base=main

Outils de coordination multi-repo

gh repo list myorg --limit 200
for repo in $(gh repo list myorg --json name -q '.[].name'); do
  gh pr list -R myorg/$repo
done

Facteurs de décision honnêtes

  • Sous 20 ingénieurs, multi-repo va bien.
  • Au-dessus de 200, monorepo gagne si vous investissez en tooling.