This article is currently available in Spanish only. English translation coming soon!
Git Workflow Team Best Practices
Git workflow eficiente para equipos ágiles
El flujo de trabajo con Git que usamos en Wegow para colaborar eficientemente en equipo siguiendo metodologías ágiles.
Git workflow eficiente para equipos ágiles
Este es el workflow de Git que usamos en Wegow y funciona perfectamente.
Estructura de branches
main (producción)
↑
develop (integración)
↑
feature/nombre-feature (desarrollo)
Convenciones de commits
Seguimos Conventional Commits:
feat: añade botón de compartir en redes sociales
fix: corrige error de scroll en mobile
docs: actualiza README con instrucciones
style: formatea código con prettier
refactor: simplifica lógica de autenticación
test: añade tests para componente Button
chore: actualiza dependencias
Workflow diario
1. Crear feature branch
git checkout develop
git pull origin develop
git checkout -b feature/nueva-funcionalidad
2. Commits atómicos
git add .
git commit -m "feat: añade validación de formulario"
git commit -m "test: añade tests para validación"
3. Mantener actualizado
# Rebase frecuente con develop
git fetch origin
git rebase origin/develop
4. Push y PR
git push origin feature/nueva-funcionalidad
# Crear Pull Request en GitHub/GitLab
Code review checklist
Antes de aprobar un PR verificamos:
- Código cumple estándares del equipo
- Tests pasan
- Sin conflictos
- Cambios tienen sentido atómico
- Documentación actualizada
- Sin console.logs ni debuggers
- Performance considerada
Git aliases útiles
# ~/.gitconfig
[alias]
co = checkout
br = branch
ci = commit
st = status
unstage = reset HEAD --
last = log -1 HEAD
visual = log --graph --oneline --all
amend = commit --amend --no-edit
Resolver conflictos
# Cuando hay conflictos en rebase
git status # ver archivos conflictivos
# Resolver manualmente
git add .
git rebase --continue
Hotfix en producción
git checkout main
git pull origin main
git checkout -b hotfix/bug-critico
# Fix del bug
git commit -m "fix: soluciona error crítico en checkout"
git checkout main
git merge hotfix/bug-critico
git push origin main
git checkout develop
git merge hotfix/bug-critico
git push origin develop
Git hooks útiles
// .husky/pre-commit
npm run lint
npm run test
Mensajes de commit descriptivos
❌ Malo:
git commit -m "fix"
git commit -m "changes"
git commit -m "wip"
✅ Bueno:
git commit -m "fix: corrige cálculo de precio total en carrito"
git commit -m "feat: implementa filtro de búsqueda con debounce"
git commit -m "refactor: extrae lógica de validación a composable"
Squash commits antes de merge
git rebase -i HEAD~3
# Cambiar 'pick' a 'squash' en commits a combinar
Cherry-pick
# Aplicar commit específico de otra branch
git cherry-pick abc123
Stash para cambios temporales
git stash save "work in progress on feature X"
git checkout other-branch
# hacer algo
git checkout -
git stash pop
Conclusión
Un buen workflow de Git mejora la colaboración y reduce errores. Estos son estándares que todo equipo debería adoptar.