Saltar al contenido principal

🔀 Git Flow - PuntoHack

📋 Estructura de Ramas

Ramas Principales

  • developRAMA POR DEFECTO

    • Rama de desarrollo principal
    • Contiene el código más reciente y estable
    • Todos los features se mergean aquí antes de producción
    • Tag actual: v1.0 (MVP Completo)
  • main

    • Rama de producción (reserva para releases estables)
    • Actualmente sincronizada con develop

Ramas de Feature

Todas las ramas de feature siguen el patrón feature/nombre-descriptivo:

  • feature/supabase-realtime-toasts - Integración de Realtime y notificaciones
  • feature/modulo-3-teams-evaluation-completo - Sistema de equipos y evaluación
  • feature/modulo-4-sponsors - Módulo de sponsors
  • feature/judge-evaluation-system-complete - Sistema de evaluación de jueces
  • feature/evaluacion-criterios-dinamicos-normalizados - Criterios dinámicos
  • feature/mejoras-gestion-hackathons-jueces - Mejoras en gestión
  • feature/sistema-equipos-invitaciones-completo - Sistema de invitaciones
  • feature/sistema-invitaciones-equipos-lider - Invitaciones para líderes
  • feature/testing-y-ui-mejoras-completas - Testing y mejoras de UI
  • fix/invitations-multiples-reemplazo - Fix de invitaciones múltiples

🏷️ Tags (Versiones)

Tags del Proyecto Principal

  • v1.0 - Version 1.0 - MVP Completo (en develop)
  • v0.1.0-modulo-sponsors - Versión con módulo de sponsors completo
  • modulo-0-v1 - Módulo 0 - Core Layer v1
  • modulo-0-completo - Módulo 0: Core Layer completado y funcional

Tags de Documentación (Docusaurus)

  • v1.0 - Version 1.0 - Documentación técnica completa de PuntoHack MVP

🔄 Flujo de Trabajo Recomendado

1. Crear una Nueva Feature

# Asegúrate de estar en develop y actualizado
git checkout develop
git pull origin develop

# Crea una nueva rama de feature
git checkout -b feature/nombre-de-la-feature

# Trabaja en tu feature...
# Haz commits descriptivos
git commit -m "feat: Descripción de la feature"

# Push la rama
git push origin feature/nombre-de-la-feature

2. Mergear Feature a Develop

# Desde develop
git checkout develop
git pull origin develop

# Mergea la feature
git merge feature/nombre-de-la-feature

# O usa un Pull Request en GitHub para revisión
# Luego mergea desde la interfaz web

# Push develop actualizado
git push origin develop

3. Crear un Tag de Versión

# Asegúrate de estar en develop y todo está mergeado
git checkout develop
git pull origin develop

# Crea un tag anotado
git tag -a v1.1.0 -m "Version 1.1.0 - Descripción de cambios"

# Push el tag
git push origin v1.1.0
# O push todos los tags
git push origin --tags

📦 Repositorios

Repositorio Principal: PuntoHack

Repositorio de Documentación: PuntoHackDocs

✅ Estado Actual

  • ✅ Rama develop configurada como default en GitHub
  • ✅ Tag v1.0 creado en proyecto principal (en develop)
  • ✅ Tag v1.0 creado en documentación (en main)
  • ✅ Todos los tags pusheados a remotos
  • ✅ Todas las ramas sincronizadas

🎯 Buenas Prácticas

  1. Nunca hacer push directo a develop - Usa Pull Requests
  2. Commits descriptivos - Usa convenciones: feat:, fix:, docs:, refactor:, etc.
  3. Tags anotados - Siempre usa git tag -a con mensaje descriptivo
  4. Sincronizar antes de trabajar - Siempre git pull antes de crear nuevas ramas
  5. Mantener develop estable - Solo mergear código probado y funcional

📝 Convenciones de Commits

  • feat: - Nueva funcionalidad
  • fix: - Corrección de bugs
  • docs: - Cambios en documentación
  • refactor: - Refactorización de código
  • test: - Agregar o modificar tests
  • chore: - Tareas de mantenimiento
  • style: - Cambios de formato (no afectan funcionalidad)

Última actualización: Enero 2025 Versión actual: v1.0