Estructura de ramificación de Git

resources/images/handbook/git_branching_model.svg

rama principal

Esta rama sigue el programa de lanzamiento público del sindicato. Todo en esta rama es oficial, por lo que cualquier confirmación que aterrice aquí debe haber sido validada por un administrador de lanzamiento.

Los lanzamientos oficiales se marcan con etiquetas git o ramas de lanzamiento.

Cuando está listo, el administrador de versiones fusiona (sin aplastar) la rama dev con la rama main.

rama de desarrollo

Las confirmaciones en esta rama se han sometido a control de calidad (QA), pasan pruebas unitarias y linting de estilo de código. Para garantizar todo esto, solo los mantenedores del repositorio tienen derechos de confirmación en esta rama.

El código llega a esta rama a través de GitHub Pull Requests (PR) de las ramas feature.

ramas características

Cada rama se ocupa de una característica única. Salen de la rama dev y regresan a ella a través de un PR, asegurándose de que sea revisado por pares y pase el control de calidad, las pruebas unitarias y el estilo de código.

Principio de compromiso temprano/compromiso frecuente. No se aplica ningún formato de mensaje de confirmación especial en esta rama.

Antes de enviar un PR para fusionarlo con dev, las confirmaciones en una rama de funciones se rebasan en el HEAD actual y se aplastan en una o varias compromisos con el formato adecuado (Consulte: doc :comprometer-disciplina)).

Las ramas de características deben eliminarse después de fusionarlas nuevamente en dev.

ramas de tareas (opcional)

Cuando las funciones son lo suficientemente grandes, se pueden dividir en tareas.

Las ramas de tarea parten y, más tarde, se fusionan con su correspondiente rama de característica después de la revisión por pares. Principio de compromiso temprano/compromiso frecuente. No se aplica ningún formato de mensaje de confirmación especial.

liberar ramas (discusión en curso)

Bifurcación de la rama ‘principal’. Los administradores de versiones aplican las revisiones a las ramas de “lanzamiento” después de la revisión por pares.