Gitflow - nicolasjaramillocely99/Proyecto_Ingenieria_Software_Aplicaciones_Moviles GitHub Wiki
GitFlow - Proyecto Vinilos app
Ramas
| Nombre rama | Propósito |
|---|---|
| main | Esta rama contiene el código estable y funcional listo para producción. Solo se actualiza con releases aprobados. |
| release | Esta rama contiene las funcionalidades completas listas para ser probadas antes del despliegue. Aquí se realizan pruebas finales, correcciones de bugs menores y preparación de documentación. |
| develop | Rama de integración principal donde se combinan todas las features completadas. Contiene la versión más actualizada en desarrollo. |
| feature/[nombre] | Cada rama feature contiene la implementación de una historia de usuario específica (ej: feature/gestion-proveedores, feature/crear-menu). |
| hotfix/[nombre] | Ramas para correcciones urgentes en producción que no pueden esperar al siguiente release. |
Flujo
- Desarrollo de Features: Las historias de usuario se desarrollan en ramas
feature/[nombre]creadas desdedevelop - Integración: Las features completadas se integran a
developmediante Pull Request - Preparación de Release: Cuando se completa un sprint, se crea
release/[version]desdedevelop - Despliegue: Después de las pruebas finales,
releasese integra amainydevelop - Correcciones Urgentes: Los hotfixes se crean desde
mainy se integran tanto amaincomo adevelop
Acuerdos
| Acción | Quién | Cuándo | Dónde |
|---|---|---|---|
| Crear repositorios | Líder técnico del equipo | Al inicio del proyecto | GitHub |
| Crear rama feature | Desarrollador asignado a la historia | Al iniciar trabajo en nueva historia de usuario | Repositorio local, desde develop |
| Realizar commits | Cada desarrollador | Mínimo diario o al completar subtarea | Rama feature correspondiente |
| Hacer Pull Request de feature | Desarrollador que completó la feature | Al terminar implementación y pruebas de la historia | Desde feature/[nombre] hacia develop |
| Revisar Pull Request | Otro miembro del equipo (peer review) | Dentro de 24 horas de creado el PR | GitHub |
| Integrar feature a develop | Reviewer o líder técnico | Después de aprobación del PR | Rama develop |
| Sincronizar develop | Desarrollador que finalizo su HU de ultimas | Inmediatamente después del release | Integrar cambios de release a develop |
| Crear hotfix | Desarrollador asignado | Al detectar bug crítico en producción | Desde main hacia hotfix/[descripcion] |
| Actualizar ramas locales | Cada desarrollador | Diariamente antes de iniciar trabajo | git pull en develop y main |
Convenciones de Nomenclatura
Ramas
feature/editar-proveedoresfeature/crear-menufeature/reporte-comprasreléase/v1.0.0hotfix/corregir-calculo-precios
Commits
- Usar formato:
[TIPO]: Descripción breve - Tipos:
feat,fix,docs,style,refactor,test - Ejemplo:
feat: agregar formulario creación de proveedores
Pull Requests
- Título:
[FEATURE] Nombre de la funcionalidad - Incluir descripción de cambios y referencias a historias de usuario
- Ejemplo:
[FEATURE] Gestión de proveedores - HU001, HU002, HU003
Políticas de Integración
- Nunca hacer push directo a main o develop
- Ejecutar pruebas antes de crear Pull Request
- Resolver conflictos antes de solicitar integración
- Documentar cambios significativos en el PR