#+LINK_HOME: index.html
#+INCLUDE: header.org
#+ATTR_HTML: :title Git Flow Full Example with branch develop, master, support 0.1x, support 0.2.x and four tags include GitLab Pipeline Status, Ready and Approve MR for branchs feature, hotfix and release

Hace 10 años que uso git flow 1 en gcoop
2 y hace 2 años que en un proyecto grande lo usamos conjuntamente con
el circuito de MRs 3 de GitLab 4 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 5 esta disponible en el repo
osiux-graphviz 6
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 |
feature, release y tag #
- crear issue en
project#123 - crear branch
feature/foosaliendo dedevelopen el repo que corresponda - crear MR
Draf: Resolve feature/foo "Issue Tittle"conCloses project#123 - branch
feature/foodebe tener MR con PS - crear documentación en wiki
foo/foo_bar_vM.N.P - branch
release/M.N.Pdebe tener PS - tag
vM.N.P
hotfix #
- crear branch
support/M.N.xsaliedo de tagvM.M.x - crear branch
hotfix/foobarsaliendo desupport/M.N.x - branch
hotfix/foobardebe tener MR con PS
Referencias #
| item | descripción |
|---|---|
| MR | Merge Request |
| PS | Pipeline Success |
M.N.P |
MAJOR.MINOR.PATCH |
Tal vez te interese leer #
- Automate conversion of blog from org-mode to Html, Markdown
and Gemini using Docker image
alpine-org2blogand GitLab CI - howto launch gitlab ci from other gitlab ci repo using trigger
- Automatizar la implementación de los recursos de AWX con GitLab CI/CD y Ansible Tools
- cómo usar GitLab desde la línea de comandos
ChangeLog #
2023-05-12 10:40agregar Graficar ejemplo completo de integrar GitFlow y GitLab MRs
last updated: