Graficar ejemplo completo de integrar GitFlow y GitLab MRs
Hace 10 años que uso git flow en gcoop y
hace 2 años que en un proyecto grande lo usamos conjuntamente con el
circuito de MRs de GitLab para
clarificar un poco todo el proceso decidí utilizar GraphViz
En el diagrama de ejemplo se plantean 2 features (foo y bar), cada
uno es para un release en particular (v0.1.0 y v0.2.0) y posterior
a cada release se generan 2 hotfix (v0.1.1 y v0.2.2).
El código del grafo esta disponible en el
repo osiux-graphviz
El flujo de desarrollo es idéntico tanto para feature, release y
hotfix, es decir, todos los branchs requieren los siguientes pasos:
- Crear branch e inmediatamente, crear MR en Draft
- Desarrollar feature, release y/o hotfix
- Verificar Pipeline Success de GitLab (caso contrario volver a 2)
- Si el desarrollo esta listo, marcar Ready
- Revisar MR y Aprobar solo si hay PS (caso contrario volver a 2)
- Si se completaron todos los pasos anteriores, realizar merge
| type | tag/branch | Create MR | PS | Ready | Review MR | Approve | Merge |
|---|
| Tag Releases | v0.1.0, v0.2.0, v0.1.1, v0.2.2 | N/A | GitLab | N/A | N/A | N/A | N/A |
| Stable Releases | master, support/0.1.x, support/0.2.x | N/A | GitLab | N/A | N/A | N/A | N/A |
| Release Branchs | release/0.1.0, release/0.2.0 | Developer | GitLab | Developer | Mantainer | Mantainer | Mantainer |
| Hotfix Branchs | hotfix/0.1.1, hotfix/0.2.2 | Developer | GitLab | Developer | Mantainer | Mantainer | Mantainer |
| Feature Branchs | feature/foo, feature/bar | Developer | GitLab | Developer | Mantainer | Mantainer | Mantainer |
Referencias
| item | descripción |
|---|
| MR | Merge Request |
| PS | Pipeline Success |
M.N.P | MAJOR.MINOR.PATCH |
ChangeLog
2023-05-12 10:40 agregar Graficar ejemplo completo de integrar GitFlow y GitLab MRs