Lección 2.5.2: Mensajes
Un mensaje de commit lo lee alguien que no estaba. Con un formato común, se entiende de un vistazo.
La idea
El mensaje de un commit lo lee alguien que no estaba: tú dentro de tres meses, o quien trabaje contigo. Tiene que decir qué cambia, y en un formato que todos lean igual.
El formato más usado se llama Conventional Commits:
tipo(alcance): resumen corto
- detalle 1
- detalle 2
La estructura
| Parte | Qué es | Ejemplo |
|---|---|---|
tipo | Qué clase de cambio es. Va siempre | feat |
(alcance) | Qué parte del proyecto toca. Opcional | (tabla) |
: resumen | Qué hace el cambio, en una línea corta | : permite elegir el número de la tabla |
| Cuerpo | Los detalles, en viñetas, tras una línea en blanco. Opcional | - la función tabla(n) escribe cualquier tabla |
El alcance no es la rama: es la parte del proyecto que cambia, como tabla, juego o pagina.
Los tipos
| Tipo | Cuándo |
|---|---|
feat | Algo nuevo: una función, una página |
fix | Arreglar un fallo |
docs | Solo documentación |
style | Formato: espacios, sangría, comas. El código hace lo mismo |
refactor | Reorganizar el código sin cambiar lo que hace |
test | Añadir o cambiar pruebas |
chore | Mantenimiento: configuración, dependencias |
Hay más (perf, build, ci), pero con estos se cubre casi todo.
Las reglas
- Resumen corto: unos 50 caracteres, sin punto final.
- En minúscula y diciendo qué hace: «añade», no «añadido» ni «añadiendo».
- Un commit, un cambio: si el resumen necesita «y», seguramente son dos commits.
Escribir un mensaje con cuerpo
-m sirve para una línea. Para un mensaje con detalles, mejor escribirlo en VS Code. Una vez:
git config --global core.editor "code --wait"
En macOS, antes, en VS Code: Cmd + Mayús + P → Shell Command: Install 'code' command in PATH.
Desde entonces, git commit sin -m abre el mensaje en VS Code:
git commit
Escríbelo, guarda y cierra la pestaña: el commit se hace al cerrarla.
feat(tabla): permite elegir el número de la tabla
- la función tabla(n) escribe la tabla de cualquier número
- tabla.js la llama con el 3, como antes
Así queda en el historial:
git log -1
commit 66c4396a81db05aa5bc2940c0f5b6a6642b44c9b (HEAD -> main)
Author: Ana García <ana@ejemplo.com>
Date: Tue Oct 20 18:30:00 2026 +0200
feat(tabla): permite elegir el número de la tabla
- la función tabla(n) escribe la tabla de cualquier número
- tabla.js la llama con el 3, como antes
A partir de aquí, los commits del curso siguen este formato.
Pruébalo
Escribe el mensaje de cada cambio:
tabla.jsllegaba hasta el 9 y lo arreglas para que llegue hasta el 10.- Cambias el nombre de la variable
ipornumeropara que se entienda mejor. El programa hace lo mismo. - Añades a
hola.jsuna despedida.
Ver la solución
fix(tabla): llega hasta el 10
refactor(tabla): renombra i a numero
feat(saludo): añade la despedida
Un mensaje por commit: son tres commits, no uno.
En resumen
tipo(alcance): resumen, y si hace falta, detalles en viñetas tras una línea en blanco.- El tipo dice qué clase de cambio es:
feat,fix,refactor… - El alcance es la parte del proyecto, no la rama.
- Resumen corto, en minúscula y diciendo qué hace. Un commit, un cambio.