Commits

Usamos Conventional Commits con referencia obligatoria al workitem de GitLab.

Anatomía del commit

subject
feat: agrega pantalla de login con Google
tipo + descripción corta en presente imperativo. Máximo ~72 caracteres.
body
(línea en blanco obligatoria)
Contexto opcional: por qué se tomó esta decisión técnica.
Solo cuando el subject no alcanza para entender el cambio.
footer
Refs #456 ← referencia el issue sin cerrarlo (commit parcial)
Closes #456 ← referencia Y cierra el issue al mergear (commit final)
Usar Closes solo cuando el commit representa la finalización completa del issue.

Tipos de commit

TipoCuándo usarloObligatorio
featNueva funcionalidad
fixCorrección de bug o error
refactorMejora de código sin cambiar comportamientoOpcional
docsCambios en documentaciónOpcional
testAgregar o modificar testsOpcional

Ejemplos completos

# Commit parcial — el issue sigue abierto
git commit -m "feat: agrega pantalla de login con Google" \
           -m "Refs #456"

# Commit final — el issue se cierra al mergear
git commit -m "feat: completa flujo de autenticación con Google" \
           -m "Closes #456"

# Corrección de bug
git commit -m "fix: corrige cálculo de descuento en carrito" \
           -m "Closes #101"
Prohibido: Commits tipo wip, cambios, arregle cosas o cualquier mensaje no descriptivo sin referencia al issue.