Etiquetado¶
Git tiene la posibilidad de etiquetar puntos específicos del historial como importantes. Esta funcionalidad se usa típicamente para marcar versiones de lanzamiento (v1.0, por ejemplo). En esta sección, vas a aprender cómo listar las etiquetas disponibles, cómo crear nuevas etiquetas y cuáles son los distintos tipos de etiquetas.
Creando Etiquetas¶
Git utiliza dos tipos principales de etiquetas: ligeras y anotadas.
Una etiqueta ligera es muy parecido a una rama que no cambia - simplemente es un puntero a un commit específico.
Sin embargo, las etiquetas anotadas se guardan en la base de datos de Git como objetos enteros. Tienen un checksum; contienen el nombre del etiquetador, correo electrónico y fecha; tienen un mensaje asociado; y pueden ser firmadas y verificadas con GNU Privacy Guard (GPG).
Etiquetas Anotadas¶
Crear una etiqueta anotada en Git es sencillo, utilizando la opción -a
cuando ejecutamos el comando tag
:
Por ejemplo:
La opción -m
especifica el mensaje de la etiqueta, el cual es guardado junto con ella. Si no especificás el mensaje de una etiqueta anotada, Git abrirá el editor de texto para que lo escribas.
Etiquetas Ligeras¶
La otra forma de etiquetar un commit
es mediante una etiqueta ligera. Una etiqueta ligera no es más que el <checksum>(https://es.wikipedia.org/wiki/Suma_de_verificaci%C3%B3n) de un commit
guardado en un archivo - no incluye más información. Para crear una etiqueta ligera ejecutamos:
Por ejemplo:
Etiquetado Tardío¶
También podés etiquetar commits
mucho tiempo después de haberlos hecho. Para ello, tendremos que ejecutar el siguiente comando:
Donde podremos obtener el hash abreviado de un commit
ejecutando:
De esta manera, un ejemplo de etiquetado tardío sería:
Visualizando etiquetas¶
Git dispone de comandos para visualizar las etiquetas creadas así como la información asociada a alguna de ellas en espcial.
Listando etiquetas¶
Para ver la lista de las etiquetas creadas, ejecutaremos el comando tag
:
También podemos listar todas las etiquetas que cumplan con un patrón de búsqueda determinado, con la opcion -l
:
Por ejemplo:
Listará todas las etiquetas que comiencen con dicho patrón de búsqueda, como v1.8.1, v1.8.0.2, etc.
Mostrando información de una etiqueta específica¶
Para ver la información de una etiqueta específica, sea anotada o ligera (la primera arrojará más información):
Por ejemplo:
Publicando etiquetas¶
Por defecto, el comando git push
no transfiere las etiquetas a los servidores remotos. Es necesario enviar las etiquetas de forma explícita al servidor luego de que las hayas creado. Este proceso es similar al de compartir ramas remotas:
Por ejemplo:
Si queremos enviar varias etiquetas a la vez, podemos usar la opción --tags
del comando git push
. Esto enviará al servidor remoto todas las etiquetas que aun no existen en él.
Por ejemplo:
A partir de ahora, cuando alguien clone o traiga información de tu repositorio, también obtendrá todas las etiquetas.
Eliminando Etiquetas¶
Finalmente, las etiquetas pueden eliminarse sin aleterar por ello, el contenido del repositorio. Podemos alojar las etiquetas de manera local como remota.
Local¶
Para eliminar una etiqueta local, ejecutamos:
Por ejemplo:
Remoto¶
Para eliminar también la etiqueta, de manera remota, ejecutamos el comando anterior ligeramente modificado, indicando ahora el orgien remoto:
Por ejemplo: