Conventional Commits para trabajar en equipo

| Última modificación: 25 de octubre de 2024 | Tiempo de Lectura: 3 minutos

Algunos de nuestros reconocimientos:

Premios KeepCoding

Puede que hayas notado antes en cursos de programación o vídeo tutoriales que hay personas que a cada mensaje de Git le ponen una abreviatura adelante. En este post te enseñamos de dónde vienen estas abreviaturas, llamadas conventional commits, para qué sirven y cómo se utilizan en el contexto de la programación en equipo.

¿Qué son los conventional commits?

Para entender qué son los conventional commits primero debemos saber qué es un commit. Un commit es un elemento clave en el trabajo con la herramienta Git, un software diseñado por Linus Torvals para controlar las versiones de un proyecto. Este software se basa en que la copia de trabajo de un desarrollador funciona también como un historial de todos los cambios efectuados en el proyecto.

Las abreviaturas que has visto al inicio de un commit sirven para saber qué tipo de commit es. Estas abreviaturas no son una convención personal que cada programador crea. De hecho, es un lenguaje muy popular a la hora de programar en equipo llamado conventional commits. Bajo este lenguaje hay normas de cómo se escribe un mensaje de commit y tipos de commit. El propósito de este lenguaje es crear un historial de tus cambios más eficiente. En vez de tener solo el código del commit con el autor y la fecha, tendremos un texto claro que nos describirá qué cambio se ha dado.

Hay programas que te generan directamente un archivo changelog o historial de cambios de una versión a otra. Estos programas te crean un archivo con todo lo que ha cambiado en tu proyecto basándose en los mensajes de log o commit. Usando los conventional commits, este programa podrá identificar con más facilidad qué ha sucedido entre una versión y otra.

Puede que al principio tus equipos se pongan incómodos con la incorporación del lenguaje de conventional commits, pero te aseguras que, al poco tiempo, agradecerás haber organizado tu historial de cambios de esta manera.

Estructura de los conventional commits

Los conventional commits se estructuran a partir de dos elementos básicos. Primero, se escribe el tipo de commit con una abreviatura y, después, su descripción, separados por dos puntos. Los tipos de conventional commits más populares son:

  • fix: quiere decir que se hizo una reparación de un bug en nuestra página web.
  • feat: se escribe cuando queremos decir que se introdujo una función nueva en nuestro código.
  • build: representa cualquier acción que tenga que ver con el proceso de construcción de la página web.
  • ci: representa un commit con un cambio en la configuración de nuestros archivos CI.
  • chore: son commits intermedios de trabajo que no quieren decir nada y se pueden ignorar cuando generemos el archivo changelog.
  • docs: representa cambios de documentación y creación de archivos.
  • style: representa un cambio en el estilo de redacción del código. Por ejemplo, si cambias las comillas dobles a las comillas simples, estás creando un cambio en el estilo de programación.
  • refactor: representa un cambio en el proceso de refactorización. Este proceso sucede cuando hacemos cambios en la estructura interna de nuestro software para hacerlo más fácil de entender. Estos cambios no añaden funciones ni reparan bugs.
  • perf: representa un cambio en el código que mejora el rendimiento de la página web y hace que vaya más rápido.
  • test: representa un cambio en los test existentes o la creación de nuevos test faltantes.

Además de los elementos de descripción y tipo, los conventional commits tienen elementos opcionales que pueden ayudarte a ser más específico. Entre el tipo y la descripción puedes añadir el ámbito de actuación del cambio. Además, si necesitas especificar más cosas sobre el cambio que has realizado, puedes ponerle un cuerpo opcional al mensaje.

Finalmente, un conventional commit también puede tener un pie de mensaje o footer. El footer más común es BREAKING CHANGE, que quiere decir que el cambio realizado genera un rompimiento en el API. Este footer es importante para decirle a tu equipo que va a haber incompatibilidad con la versión anterior.

Para revisar todos los convenios de este lenguaje, ejemplos de cómo se estructura un mensaje commit y qué quiere decir dependiendo de los elementos que use, te recomendamos ir a la página de conventional commits que tiene toda la información actualizada.

¿Te animas a seguir aprendiendo?

Después de leer este post estás listo para trabajar y programar en equipo de manera eficiente. ¿Y qué mejor manera para poner tus habilidades a prueba que un curso en donde compartas código con otros programadores? Por ello, te recomendamos nuestro bootcamp intensivo Desarrollo Web Full Stack Bootcamp. Allí, además de aprender todo lo necesario para ser un desarrollador web, estarás en un ambiente perfecto para la prueba y error. ¡Apúntate!

Alberto Casero

Alberto Casero es CTO en Watium, Fundador de Kas Factory & Coordinador del Bootcamp en Desarrollo Web.

Posts más leídos

¡CONVOCATORIA ABIERTA!

Desarrollo Web

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado