Knowledgebase

Monorepositories and Multiple Repositories Print

  • softwareengineering, software, guide, howto, solution, zillionkinghost, hosting, support
  • 0

How to divide code.

WHAT A MONOREPOSITORY IS

Several projects in one repository.

WHAT IT PROVIDES

Changes across projects in one commit One version of shared code Easier refactoring across boundaries Consistent tooling

WHAT IT COSTS

Repository size Build tooling that must understand what changed Access control being coarser

WHAT SEPARATE REPOSITORIES PROVIDE

Clear ownership Independent versioning and release Smaller, simpler repositories Finer access control

WHAT THEY COST

Coordinating changes across them Shared code requiring publication and versioning Duplicated tooling and configuration

WHAT TO CHOOSE ON

How often changes span projects Team structure and ownership Whether release cycles are independent Tooling available

WHAT SUITS A SMALL ORGANISATION

Frequently one repository, because coordination costs exceed the benefits of separation.

WHAT TO AVOID

Splitting repositories to reflect an organisational structure that changes.

WHAT TO ENSURE EITHER WAY

Clear ownership, and consistent conventions.


Was this answer helpful?
Back

Are you happy with your experience? Leave us a review on Trustpilot.


Trustpilot