Estado de Tareas Automático con PR Merges | GitScrum
Conecta merges de pull requests con actualizaciones automáticas de estado de tareas usando integración Git, eliminando updates manuales.
7 min de lectura
Los desarrolladores no deberían tener que actualizar el estado de tareas manualmente después de mergear código. La integración Git de GitScrum automáticamente mueve tareas a través de las etapas del workflow basándose en actividad de PR, manteniendo el estado del proyecto preciso sin overhead para desarrolladores.
El Problema de la Actualización Manual
| Sin Automatización | Con Automatización |
|---|---|
| Desarrollador abre PR | Desarrollador abre PR |
| Desarrollador actualiza tarea a "Revisión" | Tarea auto-mueve a "Revisión" |
| Revisor aprueba | Revisor aprueba |
| Desarrollador actualiza tarea | Tarea auto-etiquetada "aprobada" |
| Desarrollador mergea PR | Desarrollador mergea PR |
| Desarrollador actualiza tarea a "Hecho" | Tarea auto-mueve a "Hecho" |
| **5 actualizaciones manuales** | **0 actualizaciones manuales** |
Configurando la Integración Git
Setup de Conexión
SETUP DE INTEGRACIÓN GIT
════════════════════════
Paso 1: Conectar Repositorio
────────────────────────────
Plataforma: GitHub / GitLab / Bitbucket
Repositorio: empresa/producto
Autenticación: OAuth o Personal Access Token
Paso 2: Configurar Patrón de ID de Tarea
────────────────────────────────────────
Patrón: #(\d+)
Ejemplos que coinciden: #123, #456
Alternativa: TASK-(\d+) para formato TASK-123
Paso 3: Habilitar Webhooks
──────────────────────────
Eventos a rastrear:
├── Branch creado
├── Pull request abierto
├── Pull request aprobado
├── Pull request mergeado
└── Pull request cerrado
Reglas de Automatización
REGLAS DE AUTOMATIZACIÓN
════════════════════════
REGLA 1: Branch Creado
──────────────────────
Trigger: Nombre de branch contiene ID de tarea
Acción: Mover tarea a "En Progreso"
Ejemplo: feature/#123-auth-usuario → Tarea #123 a En Progreso
REGLA 2: PR Abierto
───────────────────
Trigger: Descripción de PR contiene ID de tarea
Acción:
├── Mover tarea a "En Revisión"
├── Enlazar PR a tarea
└── Notificar revisor asignado
REGLA 3: PR Aprobado
────────────────────
Trigger: PR recibe aprobaciones requeridas
Acción: Agregar etiqueta "aprobado" a tarea
REGLA 4: PR Mergeado
────────────────────
Trigger: PR mergeado a main/master
Acción: Mover tarea a "Hecho"
REGLA 5: PR Cerrado Sin Merge
─────────────────────────────
Trigger: PR cerrado sin mergear
Acción: Mover tarea de vuelta a "En Progreso"
Enlazando PRs a Tareas
En Nombres de Branch
CONVENCIONES DE NOMBRES DE BRANCH
═════════════════════════════════
Formato: tipo/#id-tarea-descripcion-corta
Ejemplos:
├── feature/#123-autenticacion-usuario
├── bugfix/#456-loop-redirect-login
├── hotfix/#789-parche-seguridad
└── refactor/#234-limpiar-modulo-auth
GitScrum extrae: #123, #456, #789, #234
CONFIGURACIÓN EN GITSCRUM:
├── Proyecto > Integraciones > Git
├── Patrón de ID: #(\d+) o TASK-(\d+)
├── Extraer de: nombre de branch + descripción PR
└── Case insensitive: ✓
En Descripciones de PR
PLANTILLA DE DESCRIPCIÓN DE PR
══════════════════════════════
## Resumen
[Descripción breve del cambio]
## Tarea Relacionada
Closes #123
<!-- O: Fixes #123, Resolves #123, Related to #123 -->
## Tipo de Cambio
- [ ] Bugfix
- [x] Feature
- [ ] Refactor
- [ ] Documentación
## Checklist
- [x] Tests agregados/actualizados
- [x] Documentación actualizada
- [ ] Breaking changes
## Cómo Probar
1. [Paso 1]
2. [Paso 2]
## Screenshots (si aplica)
[Imágenes aquí]
Keywords Reconocidas
KEYWORDS PARA ENLAZAR TAREAS
════════════════════════════
CERRAR TAREA AL MERGE:
├── Closes #123
├── Fixes #123
├── Resolves #123
└── Closes: #123
ENLAZAR SIN CERRAR:
├── Related to #123
├── Part of #123
├── See #123
└── Refs #123
MÚLTIPLES TAREAS:
├── Closes #123, #124, #125
├── Fixes #123 and #124
└── Closes #123, related to #124
Flujo Completo de Automatización
FLUJO END-TO-END
════════════════
┌─────────────────────────────────────────────────────────────┐
│ │
│ DEVELOPER WORKFLOW GITSCRUM AUTO │
│ │
│ 1. Toma tarea #123 Tarea: "To Do" │
│ │ │
│ ▼ │
│ 2. git checkout -b feature/#123-login │
│ │ ┌──────────────────┐ │
│ │ │ Tarea #123 → │ │
│ │ │ "En Progreso" │ │
│ │ └──────────────────┘ │
│ ▼ │
│ 3. [Desarrolla, commits, push] │
│ │ │
│ ▼ │
│ 4. Abre PR "Login feature - Closes #123" │
│ │ ┌──────────────────┐ │
│ │ │ Tarea #123 → │ │
│ │ │ "En Revisión" │ │
│ │ │ PR enlazado │ │
│ │ └──────────────────┘ │
│ ▼ │
│ 5. Revisor aprueba PR │
│ │ ┌──────────────────┐ │
│ │ │ Tarea #123 │ │
│ │ │ +label "aprobado"│ │
│ │ └──────────────────┘ │
│ ▼ │
│ 6. Merge PR a main │
│ ┌──────────────────┐ │
│ │ Tarea #123 → │ │
│ │ "Hecho" │ │
│ │ PR cerrado │ │
│ └──────────────────┘ │
│ │
│ RESULTADO: 0 actualizaciones manuales de tarea │
│ │
└─────────────────────────────────────────────────────────────┘
Configuración Avanzada
Reglas Personalizadas
REGLAS PERSONALIZADAS
═════════════════════
REGLA: Branch tipo determina columna
──────────────────────────────────
Si branch = feature/* → "Desarrollo"
Si branch = bugfix/* → "Bug Fix"
Si branch = hotfix/* → "Hotfix Urgente"
REGLA: Label de PR determina prioridad
──────────────────────────────────────
Si PR tiene label "urgent" → Prioridad = Alta
Si PR tiene label "breaking" → Notificar a leads
REGLA: Tamaño de PR genera alertas
──────────────────────────────────
Si PR > 500 líneas → Comentario automático:
"⚠️ PR grande. Considera dividirlo."
REGLA: Tests fallando bloquea estado
────────────────────────────────────
Si CI falla → No mover tarea a "En Revisión"
Agregar comentario con link a logs
Mapeo de Estados Personalizado
MAPEO DE ESTADOS GIT → GITSCRUM
═══════════════════════════════
COLUMNAS EN GITSCRUM:
├── Backlog
├── To Do
├── En Progreso
├── En Revisión
├── QA
├── Aprobado
└── Hecho
MAPEO:
┌─────────────────────────────────────────────────┐
│ Evento Git │ Acción GitScrum │
├──────────────────────┼──────────────────────────┤
│ Branch creado │ To Do → En Progreso │
│ PR abierto │ En Progreso → En Revisión│
│ PR aprobado │ En Revisión → Aprobado │
│ PR mergeado + tests │ Aprobado → Hecho │
│ PR cerrado sin merge │ → En Progreso │
│ PR draft │ (sin cambio) │
└─────────────────────────────────────────────────┘
Troubleshooting
PROBLEMAS COMUNES
═════════════════
PROBLEMA: Tarea no se mueve automáticamente
───────────────────────────────────────────
Causa: ID de tarea no detectado
Verificar:
├── ¿ID está en branch o descripción PR?
├── ¿Formato correcto? (#123 no # 123)
├── ¿Webhook configurado?
└── ¿Conexión activa? (revisar en Integraciones)
PROBLEMA: PR no se enlaza a tarea
─────────────────────────────────
Causa: Patrón no coincide
Verificar:
├── Patrón configurado vs ID usado
├── Case sensitivity
└── Espacios adicionales
PROBLEMA: Tarea se mueve a "Hecho" muy pronto
─────────────────────────────────────────────
Causa: Merge sin pasar por review
Solución:
├── Agregar step de QA antes de Hecho
├── Regla: solo mover si tiene label "reviewed"
└── Protección de branch requiere approvals
Métricas de la Integración
DASHBOARD DE INTEGRACIÓN GIT
════════════════════════════
ACTIVIDAD (Últimos 7 días):
├── PRs abiertos: 23
├── PRs mergeados: 19
├── Tareas auto-actualizadas: 47
└── Tareas enlazadas: 98%
TIEMPO AHORRADO:
├── Actualizaciones manuales evitadas: 94
├── Tiempo estimado ahorrado: 3.1 horas
└── Por desarrollador: 28 min/semana
PRECISIÓN:
├── Tareas correctamente enlazadas: 98%
├── Estados sincronizados: 100%
└── Errores de webhook: 0
Soluciones Relacionadas
- Automatizando Gestión de Branches - Flujos de Git
- Automatizando Code Review - Revisiones
- Pipelines CI/CD - Integración continua
- Estrategias de Testing - Quality gates