Graficar ejemplo completo de integrar GitFlow y GitLab MRs
index | about | archive | charlas | docs | links
dot
|
git
|
img
|
plt
|
tty
|
uml
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/foo
saliendo dedevelop
en el repo que corresponda - crear MR
Draf: Resolve feature/foo "Issue Tittle"
conCloses project#123
- branch
feature/foo
debe tener MR con PS - crear documentación en wiki
foo/foo_bar_vM.N.P
- branch
release/M.N.P
debe tener PS - tag
vM.N.P
hotfix
- crear branch
support/M.N.x
saliedo de tagvM.M.x
- crear branch
hotfix/foobar
saliendo desupport/M.N.x
- branch
hotfix/foobar
debe 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-org2blog
and 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:40
agregar Graficar ejemplo completo de integrar GitFlow y GitLab MRs