Cómo usar tags en GIT

Una etiqueta, o tag, podemos definirla como una marca en el histórico de nuestro repositorio. Con los tags podemos marcar nuestro proyecto cuando se lance una nueva versión, por ejemplo.

Existen 2 tipos de tags que podemos crear: los llamados ligeros y los anotados. Los ligeros serían como un enlace o puntero a un "commit" específico o una rama que no cambia, y los anotados serían una copia completa del estado del repositorio.

El uso de un tipo u otro de tag dependerá, por ejemplo, si queremos un tag temporal donde la información (quién creo el tag, fecha mensaje, etc) no son importantes, entonces crearemos un tag ligero. Si, por el contrario, queremos trabajar con el tag de manera totalmente independiente sin afectar al resto del repositorio y, además disponer de toda la información de "commiteo", entonces crearemos un tag anotado, que además podremos firmar.

Veamos cómo se trabaja con los tags.

Para crear un tag ligero simplemente ejecutaremos las siguientes órdenes, asumiendo que tienes un repositorio git con tu cliente git instalado.

cd /path/repo.git
git tag nombre.del.tag id.del.commit
git push --tags

Esto basta para crear un nuevo tag ligero en nuestro repositorio git.

Para poder ver los ids de los "commits" debemos hacer un

git log

y ver la suma de verificación de dichos "commits", por ejemplo

commit 4c8c115a8e013da65cad31a7675ba02a1137f1d1
Author: xxxxxxxxxxxxxxxxx
Date:   Thu Dec 1 10:32:00 2011 +0100

    mensaje del commit

como vemos, en este caso haremos el tag sobre el "commit"

4c8c115a8e013da65cad31a7675ba02a1137f1d1

Si queremos que el tag sea anotado (objeto completo git) debemos además añadir el flag "-a" a la acción del tag

cd /path/repo.git
git tag -a nombre.del.tag id.del.commit
git push --tags

También podemos listar los tags que tenemos

git tag

o enviar un mensaje con la creación del tag

cd /path/repo.git
git tag -a -m 'mensaje sobre el tag' nombre.del.tag id.del.commit
git push --tags

ver información detallada sobre un tag

git show hombre.tag

buscar tags

git tag -l '*patron.busqueda*'

borrar tags

git tag -d nombre.del.tag
git push origin :refs/tags/nombre.del.tag

Con esto nos podemos hacer una idea bastante práctica sobre lo que es un tag y cómo usarl. Aunque, como dije antes, también podemos firmarlos, lo cual dejo como tarea para todo aquel que le interese.

No hay comentarios

Agregar comentario