
En lunes pasado presenté mi sesión sobre Trunk-based Development en Agiles 2020. La presentación fue vía Zoom pero como al finalizar el tiempo estipulado aún quedaban algunas cuestiones por hablar, la continuamos por Jitsi. Participaron unas 50 personas y yo personalmente quedé muy conforme con como salió la sesión.
Hay una cuestión que salió durante la charla y que no deja de llamarme la atención al hablar de modelos de branching. Hay gente que cree que tener un repositorio centralizado y un build server es hacer integración continua. Pues no, no lo es, no es suficiente pues la práctica de integración continua implica que adicionalmente todo el código debe ser integrado al menos una vez al día. Cuando digo integrado me refiero a integrar en un mismo branch todo el trabajo en curso. Esto es algo básico que está explícitamente mencionado en el clásico artículo de Fowler sobre Integración Continua como lo muestra la imagen a continuación:

Hacer Feature branches puede o no ser integración continua dependiendo de la duración de esos branches. Si los branches viven a lo sumo 1 día, está ok. En fin, es un tema que me resulta importante y en breve le dedicaré un artículo en profundidad.
Finalmente quiero agradecer a la organización de Agiles 2020 por haberme invitado a presentar y también a los participantes que se sumaron a la sesión. Les comparto aquí las diapositivas utilizadas en mi sesión.