Integración Git
Cómo GitScrum CLI se integra con Git. Detección automática de ramas, extracción de IDs de tareas y hooks para workflows automatizados.
El CLI es consciente de Git por diseño. Lee el contexto de tu repositorio para vincular automáticamente comandos con las tareas correctas.
Detección Automática de Rama
El CLI detecta tu rama actual y extrae IDs de tareas:
$ git checkout feature/GS-123-auth-refactor
$ gitscrum task current
# Detecta tarea GS-123 del nombre de rama
📋 GS-123: Refactorizar módulo de autenticación
Estado: En Progreso | Sprint 15Patrones Soportados
| Nombre de Rama | Tarea Detectada |
|---|---|
feature/GS-123-add-login | GS-123 |
GS-456-fix-bug | GS-456 |
123-quick-fix | 123 (requiere contexto) |
Creación de Ramas
Crea ramas con nomenclatura correcta desde IDs de tareas:
$ gitscrum task branch GS-789
✓ Creada rama: feature/GS-789-implement-oauth-flow
✓ Cambiado a la ramaConfigurar Formato de Rama
# .gitscrum.yml
git:
branch_format: "{type}/{id}-{slug}"
default_type: feature
max_slug_length: 50Placeholders disponibles: {id}, {type}, {slug}, {user}
Integración con Commits
Formatea mensajes de commit con IDs de tareas:
$ git commit -m "$(gitscrum task current --format '[{id}] {title}')"
# Commit con: [GS-123] Implementar flujo OAuthGit Hooks
Instala hooks para automatización:
gitscrum hooks install commit-msgHooks Disponibles
| Hook | Propósito |
|---|---|
commit-msg | Agregar ID de tarea a commits |
pre-push | Actualizar estado de tarea |
post-checkout | Cambiar timer a tarea de nueva rama |
Consulta Git Hooks para configuración completa.
Soporte para Worktrees
El CLI funciona con git worktrees:
$ git worktree add ../feature-GS-123 feature/GS-123
$ cd ../feature-GS-123
$ gitscrum task current
# Detecta correctamente GS-123Soporte para Monorepos
repo/
├── packages/
│ ├── api/
│ │ └── .gitscrum.yml # project: api-backend
│ └── web/
│ └── .gitscrum.yml # project: web-frontendEl CLI usa el .gitscrum.yml más cercano.
Variables de Entorno
Sobrescribe detección de Git:
| Variable | Propósito |
|---|---|
GITSCRUM_PROJECT | Sobrescribir proyecto |
GITSCRUM_BRANCH | Sobrescribir rama |
GITSCRUMTASKID | Sobrescribir ID de tarea |