Un commit gigante con el mensaje “varios cambios” es una deuda que pagas más tarde, normalmente a las 2 de la madrugada buscando qué rompió producción.
Un commit, una idea
La regla es simple: cada commit debe representar un cambio lógico completo. Si el mensaje necesita la palabra “y”, probablemente son dos commits.
❌ fix login y refactor del header y actualizar deps
✅ fix: corrige redirección tras login
✅ refactor: extrae lógica del header a un hook
✅ chore: actualiza dependencias
Por qué importa
- Revisión más fácil: nadie revisa bien un diff de 800 líneas. Sí uno de 40.
git bisectfunciona: si cada commit es atómico y deja el código funcionando, encontrar el que introdujo un bug es cuestión de minutos.git revertquirúrgico: puedes deshacer un cambio sin arrastrar otros tres.- Historia legible: el log se convierte en la narrativa de cómo creció el proyecto.
El mensaje también cuenta
Usa el imperativo y explica el por qué, no el qué (el diff ya dice qué cambió):
fix: evita doble submit en el formulario de pago
El botón no se deshabilitaba durante la petición, permitiendo
cobros duplicados si el usuario hacía doble clic.
Commits pequeños no te ralentizan. Te ahorran las horas que de otro modo perderías depurando a ciegas.