7 min lectura • Guide 742 of 877
Integración de Control de Versiones con GitScrum
El desarrollo y la gestión de proyectos deben estar conectados, no en silos. GitScrum se integra con sistemas de control de versiones para proporcionar trazabilidad desde el código hasta la tarea.
Beneficios de la Integración
Por Qué Conectar VCS a GitScrum
VALOR DE INTEGRACIÓN DE CONTROL DE VERSIONES:
┌─────────────────────────────────────────────────────────────┐
│ │
│ SIN INTEGRACIÓN: │
│ │
│ "¿Qué código cambió para esta feature?" │
│ → Buscar en commits manualmente │
│ │
│ "¿Está realmente terminada esta tarea?" │
│ → Preguntar al desarrollador, revisar repo manualmente │
│ │
│ "¿Quién puede revisar esto?" │
│ → Tarea en GitScrum, PR en GitHub, sin conexión │
│ │
│ "¿Cuál es el estado de este PR?" │
│ → Revisar GitHub, luego actualizar GitScrum manualmente │
│ │
│ ─────────────────────────────────────────────────────────── │
│ │
│ CON INTEGRACIÓN: │
│ │
│ TRAZABILIDAD: │
│ Tarea ↔ Branch ↔ Commits ↔ PR ↔ Deployment │
│ Rastro de auditoría completo │
│ │
│ AUTOMATIZACIÓN: │
│ PR abierto → Tarea se mueve a "En Revisión" │
│ PR merged → Tarea se mueve a "Done" │
│ │
│ CONTEXTO: │
│ Desde la tarea, ver todo el código relacionado │
│ Desde el PR, ver contexto de tarea y requisitos │
│ │
│ VISIBILIDAD: │
│ Progreso real basado en estado actual del código │
│ No solo lo que la gente dice que hizo │
└─────────────────────────────────────────────────────────────┘
Configurando la Integración
Integración con GitHub
CONECTANDO GITHUB:
┌─────────────────────────────────────────────────────────────┐
│ │
│ PASOS DE CONFIGURACIÓN: │
│ │
│ 1. Ir a GitScrum Settings → Integraciones │
│ 2. Seleccionar GitHub │
│ 3. Autorizar GitScrum a acceder a tus repos │
│ 4. Seleccionar repositorios a conectar │
│ 5. Configurar reglas de automatización │
│ │
│ ─────────────────────────────────────────────────────────── │
│ │
│ OPCIONES DE AUTOMATIZACIÓN: │
│ │
│ ☑ PR abierto → Tarea a "En Revisión" │
│ ☑ PR merged → Tarea a "Done" │
│ ☑ Mostrar commits en tarea │
│ ☑ Mostrar estado de CI en tarea │
│ ☐ Crear branch automático al iniciar tarea │
│ │
│ ─────────────────────────────────────────────────────────── │
│ │
│ VINCULACIÓN AUTOMÁTICA: │
│ │
│ GitScrum detecta referencias en: │
│ • Nombres de branch (feature/TASK-123-login) │
│ • Mensajes de commit (feat: login - TASK-123) │
│ • Títulos de PR (TASK-123: Agrega login) │
│ • Descripciones de PR (Closes TASK-123) │
└─────────────────────────────────────────────────────────────┘
Integración con GitLab
CONECTANDO GITLAB:
┌─────────────────────────────────────────────────────────────┐
│ │
│ PASOS DE CONFIGURACIÓN: │
│ │
│ 1. Ir a GitScrum Settings → Integraciones │
│ 2. Seleccionar GitLab │
│ 3. Ingresar URL de GitLab (cloud o self-hosted) │
│ 4. Autorizar con access token │
│ 5. Seleccionar proyectos a conectar │
│ │
│ ─────────────────────────────────────────────────────────── │
│ │
│ CONFIGURACIÓN DE WEBHOOK: │
│ │
│ En GitLab: │
│ Settings → Webhooks → Add webhook │
│ │
│ URL: [proporcionada por GitScrum] │
│ Eventos: │
│ ☑ Push events │
│ ☑ Merge request events │
│ ☑ Pipeline events │
│ │
│ ─────────────────────────────────────────────────────────── │
│ │
│ FUNCIONALIDAD: │
│ │
│ • Commits vinculados a tareas │
│ • MRs rastreados en tareas │
│ • Estado de pipeline visible │
│ • Actualización automática de estado │
└─────────────────────────────────────────────────────────────┘
Flujo de Trabajo
Flujo Típico de Desarrollo
FLUJO DE TRABAJO INTEGRADO:
┌─────────────────────────────────────────────────────────────┐
│ │
│ 1. SELECCIONAR TAREA │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ Developer toma TASK-456 del sprint ││
│ │ Estado: To Do → In Progress ││
│ └─────────────────────────────────────────────────────────┘│
│ │
│ 2. CREAR BRANCH │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ git checkout -b feature/TASK-456-user-export ││
│ │ ││
│ │ GitScrum detecta el branch y lo vincula a TASK-456 ││
│ └─────────────────────────────────────────────────────────┘│
│ │
│ 3. DESARROLLAR Y COMMITEAR │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ git commit -m "feat(export): agrega exportación CSV" ││
│ │ git commit -m "test(export): tests para exportación" ││
│ │ ││
│ │ Commits aparecen en la tarea automáticamente ││
│ └─────────────────────────────────────────────────────────┘│
│ │
│ 4. ABRIR PULL REQUEST │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ Título: TASK-456: Exportación de usuarios a CSV ││
│ │ ││
│ │ GitScrum: ││
│ │ • Detecta PR ││
│ │ • Mueve tarea a "En Revisión" ││
│ │ • Muestra link al PR en la tarea ││
│ └─────────────────────────────────────────────────────────┘│
│ │
│ 5. REVISAR Y MERGEAR │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ Reviewer aprueba y mergea PR ││
│ │ ││
│ │ GitScrum: ││
│ │ • Detecta merge ││
│ │ • Mueve tarea a "Done" ││
│ │ • Registra fecha de completado ││
│ └─────────────────────────────────────────────────────────┘│
│ │
│ 6. TRAZABILIDAD COMPLETA │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ En TASK-456 puedes ver: ││
│ │ • Branch: feature/TASK-456-user-export ││
│ │ • 2 commits ││
│ │ • PR #123 (merged) ││
│ │ • CI: passed ││
│ │ • Tiempo en cada estado ││
│ └─────────────────────────────────────────────────────────┘│
└─────────────────────────────────────────────────────────────┘
Vista de Tarea
Información de VCS en Tarea
TAREA CON INFORMACIÓN DE VCS:
┌─────────────────────────────────────────────────────────────┐
│ │
│ TASK-456: Exportación de usuarios a CSV │
│ Estado: Done ✓ │
│ │
│ ─────────────────────────────────────────────────────────── │
│ │
│ 📋 DESCRIPCIÓN: │
│ Como admin, quiero exportar usuarios a CSV... │
│ │
│ ─────────────────────────────────────────────────────────── │
│ │
│ 🔗 ACTIVIDAD DE CÓDIGO: │
│ │
│ Branch: feature/TASK-456-user-export │
│ │
│ Commits (2): │
│ ├── abc1234 feat(export): agrega exportación CSV │
│ │ @carlos - hace 2 días │
│ └── def5678 test(export): tests para exportación │
│ @carlos - hace 2 días │
│ │
│ Pull Request: │
│ └── #123 Exportación de usuarios a CSV │
│ Estado: Merged ✓ │
│ Reviews: @ana (approved), @pedro (approved) │
│ Merged por: @ana - hace 1 día │
│ │
│ CI/CD: │
│ └── ✓ Tests pasando │
│ ✓ Desplegado a staging │
│ ✓ Desplegado a producción │
│ │
│ ─────────────────────────────────────────────────────────── │
│ │
│ 📊 TIMELINE: │
│ To Do → In Progress: 2 horas │
│ In Progress → En Revisión: 1 día │
│ En Revisión → Done: 4 horas │
│ Tiempo total: 1.5 días │
└─────────────────────────────────────────────────────────────┘