Skip to content

Estrategia de Repositorios

Un repositorio es un almacén de todos los cambios y archivos de un proyecto, lo que permite a los desarrolladores «controlar la versión» de los activos del proyecto a lo largo de toda la etapa de desarrollo.

Normalmente nos referimos a los repositorios Git (como los que proporcionan GitHub, GitLab o Bitbucket), pero el concepto también se aplica a otros sistemas de control de versiones (como Mercurial). Hay dos enfoques los monorepos y los multi-repos, empecemos con los monorepos:

Los monorepos emplean un único repositorio para alojar todo el código que compone a un proyecto de software y los multi-repos utiliza varios repos para alojar el código.

Ventajas (Monorepos)

  1. Gestión centralizada de todo el desarrollo.
  2. Reduce la barrera de entrada para nuevos desarrolladores.
  3. Facilita la tarea de refactorizar el código.

Desventajas (Monorepos)

  1. Requiere clonarse todos los repos para trabajar en uno en concreto.

Ventajas (Multi-repo)

  1. Cada desarrollador trabaja en el repo que necesita.

Desventajas (Multi-repo)

  1. No tener certeza de cuántos y cuáles son todos los repos que interactúan en la solución.
  2. Mayor curva de entrada.

Enfoque elegido

Nuestra preferencia es utilizar los monorepos, pero aprovechando la caracteristica de los multipaquetes que nos da el ecosistema de JavaScript. Cada proyecto es un paquete 100% independiente, aunque aun no se ha implementando las realese de cada paquete, esto es una tarea pendiente por hacer.