Menú de navegaciónMenú
Categorías

La mejor forma de Aprender Programación online y en español www.campusmvp.es

?id=82ab182e-fa68-4639-9c8b-baa5d5bfeb78

Git: ¿qué diferencia hay entre un tag anotado y uno ligero?

Imagen ornamental

Git, el sistema de control de versiones distribuido más utilizado en el mundo del desarrollo de software, ofrece una amplia gama de características para gestionar el historial de cambios en un proyecto. Una de estas características es el uso de tags o etiquetas, que permiten marcar puntos concretos en la historia del repositorio.

En Git, un tag es simplemente una referencia a un commit específico en la historia del repositorio. Los tags se suelen utilizar para marcar versiones importantes de un proyecto, como versiones de lanzamiento o hitos importantes en el desarrollo.

Los tags proporcionan una forma cómoda de acceder a versiones específicas de un proyecto sin tener que recordar hashes de commit largos ni tener que ponernos a buscar en los mensajes de commit del historial.

Existen dos tipos principales de tags: los tags anotados y los tags ligeros.

Tags anotados en Git

Un tag anotado en Git es una referencia que incluye metadatos, como el nombre del creador del tag, la fecha en la que se creó y un mensaje asociado. Estos metadatos proporcionan contexto adicional sobre el tag, lo que lo hace más informativo y útil para los colaboradores del proyecto.

Para crear un tag anotado en Git, se utiliza el comando git tag -a seguido del nombre del tag y opcionalmente un mensaje:

git tag -a v1.0 -m "Versión 1.0 estable"

Al ejecutar este comando, Git abrirá un editor de texto donde puedes agregar un mensaje que describe el tag. Este mensaje puede incluir detalles sobre los cambios introducidos en esa versión, correcciones de errores importantes o cualquier otra información relevante para marcar de manera especial ese punto en la historia de commits.

Las etiquetas anotadas se almacenan como objetos completos en la base de datos de Git. Además del mensaje indicado tienen suma de verificación (checksum), el nombre y el correo electrónico de la persona que la ha creado, la fecha de creación, y se pueden firmar y verificar con GPG (GNU Privacy Guard).

Los tags anotados son especialmente útiles en entornos de colaboración, ya que proporcionan un registro claro de quién creó el tag y por qué. Esto facilita la comprensión del propósito y el contexto de cada versión marcada en el repositorio.

Tags ligeros en Git

En contraste con los anotados, los tags ligeros en Git son simples referencias a commits específicos en la historia del repositorio, sin ningún metadato adicional adjunto. Son más sencillos y menos informativos que los tags anotados, pero aún así pueden ser útiles en ciertos escenarios.

Para crear un tag ligero en Git, se utiliza el comando git tag seguido del nombre del tag y el hash del commit al que se desea referenciar:

git tag Tarea-001

Al ejecutar este comando, Git crea un tag ligero, sin solicitar ni incluir ningún mensaje adicional. Esto lo hace más adecuado para situaciones en las que solo se necesita una referencia simple a un punto específico en la historia del repositorio, sin necesidad de más datos.

Cómo elegir el tipo de tag adecuado

Ahora que ya los conoces, ves que son muy simples. Las principales diferencias entre los dos tipos de tag son:

  • Visibilidad en la historia: los tags anotados son más visibles en la historia del repositorio debido a la presencia de mensajes descriptivos. Será más difícil que se nos despisten o que no los encontremos.
  • Uso en colaboración: los tags anotados son más útiles en entornos de colaboración en los que trabajamos varias personas a la vez en le proyecto, ya que proporcionan un registro claro de quién creó el tag y por qué.
  • Uso de espacio: los tags anotados ocupan más especio de almacenamiento que los tags ligeros debido a la información adicional que contienen. No es que suponga mucho... pero todo suma.

Por ello, a la hora de decidir entre un tag anotado o ligero, es importante considerar el propósito y el alcance del tag, pero te dejamos unas pautas básicas de uso de los dos tipos de tags en Git:

  • Los tags anotados son los adecuados para marcar eventos significativos en la historia del proyecto, como lanzamientos, hitos o cambios importantes. Proporcionan un registro claro y detallado del progreso del proyecto y son útiles para propósitos de documentación y para compartir con el resto del equipo de desarrolladores.
  • Los tags ligeros son útiles para propósitos temporales o internos, como marcar commits específicos para depuración o pruebas. Son más informales y no contienen metadatos o mensajes adicionales. Suelen utilizarse para uso personal, depuración, para marcar un commit en el que estás trabajando actualmente y sobre el que quieres volver, o un commit que necesitas recordar para una tarea específica más adelante.

Eso sí, a veces, es posible que los tags anotados ni siquiera sean necesarios para versiones principales, por ejemplo. Todo depende de nuestras necesidades. Por ejemplo, si nuestro tag se llama "v1.0.0" es evidente que se refiere a una versión concreta y salvo que queramos saber quién y cuándo lo creó o queramos almacenar con él las cosas nuevas que lleva esa versión, con un tag ligero sería más que suficiente.

Al final lo importante es saber qué estamos haciendo y decidir en función de nuestras necesidades concretas.

En cualquier caso es importante que todo el equipo mantenga una convención de nomenclatura para los tags, que sea consistente y que luego te facilite la búsqueda y el seguimiento de los commits etiquetados.

Siguiendo estas pautas y mejores prácticas, podrás elegir el tipo de tag adecuado para cada caso y mejorar la colaboración y el seguimiento del historial de cambios en el código.

 

campusMVP campusMVP es la mejor forma de aprender a programar online y en español. En nuestros cursos solamente encontrarás contenidos propios de alta calidad (teoría+vídeos+prácticas) creados y tutelados por los principales expertos del sector. Nosotros vamos mucho más allá de una simple colección de vídeos colgados en Internet porque nuestro principal objetivo es que tú aprendas. Ver todos los posts de campusMVP
Archivado en: Herramientas

Boletín campusMVP.es

Solo cosas útiles. Una vez al mes.

🚀 Únete a miles de desarrolladores

DATE DE ALTA

x No me interesa | x Ya soy suscriptor

La mejor formación online para desarrolladores como tú

Agregar comentario

Los datos anteriores se utilizarán exclusivamente para permitirte hacer el comentario y, si lo seleccionas, notificarte de nuevos comentarios en este artículo, pero no se procesarán ni se utilizarán para ningún otro propósito. Lee nuestra política de privacidad.