{"id":2289,"date":"2012-06-20T10:19:49","date_gmt":"2012-06-20T08:19:49","guid":{"rendered":"http:\/\/blog.unelink.es\/?p=2289"},"modified":"2012-06-14T11:23:31","modified_gmt":"2012-06-14T09:23:31","slug":"como-usar-tags-en-git","status":"publish","type":"post","link":"https:\/\/hosting.airetech.es\/blog\/wiki\/como-usar-tags-en-git\/","title":{"rendered":"C\u00f3mo usar tags en GIT"},"content":{"rendered":"<p>Una etiqueta, o tag, podemos definirla como una marca en el hist\u00f3rico de nuestro repositorio. Con los tags podemos marcar nuestro proyecto cuando se lance una nueva versi\u00f3n, por ejemplo.<\/p>\n<p>Existen 2 tipos de tags que podemos crear: los llamados ligeros y los anotados. Los ligeros ser\u00edan como un enlace o puntero a un \"commit\" espec\u00edfico o una rama que no cambia, y los anotados ser\u00edan una copia completa del estado del repositorio.<\/p>\n<p>El uso de un tipo u otro de tag depender\u00e1, por ejemplo, si queremos un tag temporal donde la informaci\u00f3n (qui\u00e9n 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\u00e1s disponer de toda la informaci\u00f3n de \"commiteo\", entonces crearemos un tag anotado, que adem\u00e1s podremos firmar.<\/p>\n<p>Veamos c\u00f3mo se trabaja con los tags.<\/p>\n<p>Para crear un tag ligero simplemente ejecutaremos las siguientes \u00f3rdenes, asumiendo que tienes un repositorio git con tu cliente git instalado.<\/p>\n<pre>\r\ncd \/path\/repo.git\r\ngit tag nombre.del.tag id.del.commit\r\ngit push --tags\r\n<\/pre>\n<p>Esto basta para crear un nuevo tag ligero en nuestro repositorio git.<\/p>\n<p>Para poder ver los ids de los \"commits\" debemos hacer un<\/p>\n<pre>\r\ngit log\r\n<\/pre>\n<p>y ver la suma de verificaci\u00f3n de dichos \"commits\", por ejemplo<\/p>\n<pre>\r\ncommit 4c8c115a8e013da65cad31a7675ba02a1137f1d1\r\nAuthor: xxxxxxxxxxxxxxxxx\r\nDate:   Thu Dec 1 10:32:00 2011 +0100\r\n\r\n    mensaje del commit\r\n<\/pre>\n<p>como vemos, en este caso haremos el tag sobre el \"commit\"<\/p>\n<pre>\r\n4c8c115a8e013da65cad31a7675ba02a1137f1d1\r\n<\/pre>\n<p>Si queremos que el tag sea anotado (objeto completo git) debemos adem\u00e1s a\u00f1adir el flag \"-a\" a la acci\u00f3n del tag<\/p>\n<pre>\r\ncd \/path\/repo.git\r\ngit tag -a nombre.del.tag id.del.commit\r\ngit push --tags\r\n<\/pre>\n<p>Tambi\u00e9n podemos listar los tags que tenemos<\/p>\n<pre>\r\ngit tag\r\n<\/pre>\n<p>o enviar un mensaje con la creaci\u00f3n del tag<\/p>\n<pre>\r\ncd \/path\/repo.git\r\ngit tag -a -m 'mensaje sobre el tag' nombre.del.tag id.del.commit\r\ngit push --tags\r\n<\/pre>\n<p>ver informaci\u00f3n detallada sobre un tag<\/p>\n<pre>\r\ngit show hombre.tag\r\n<\/pre>\n<p>buscar tags<\/p>\n<pre>\r\ngit tag -l '*patron.busqueda*'\r\n<\/pre>\n<p>borrar tags<\/p>\n<pre>\r\ngit tag -d nombre.del.tag\r\ngit push origin :refs\/tags\/nombre.del.tag\r\n<\/pre>\n<p>Con esto nos podemos hacer una idea bastante pr\u00e1ctica sobre lo que es un tag y c\u00f3mo usarl. Aunque, como dije antes, tambi\u00e9n podemos firmarlos, lo cual dejo como tarea para todo aquel que le interese.<\/p>\n","protected":false},"excerpt":{"rendered":"Una etiqueta, o tag, podemos definirla como una marca en el hist\u00f3rico de nuestro repositorio. Con los tags podemos marcar nuestro proyecto cuando se lance una nueva versi\u00f3n, por ejemplo. Existen 2 tipos de tags que podemos crear: los llamados ligeros y los anotados. Los ligeros ser\u00edan como un enlace o puntero a un \"commit\" espec\u00edfico o una rama que&nbsp;<a href=\"https:\/\/hosting.airetech.es\/blog\/wiki\/como-usar-tags-en-git\/\" class=\"read-more\">Seguir leyendo<\/a>","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[10,6],"tags":[156,216,165],"class_list":["post-2289","post","type-post","status-publish","format-standard","hentry","category-linux","category-wiki","tag-git","tag-linux","tag-tag","cat-10-id","cat-6-id"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/hosting.airetech.es\/blog\/wp-json\/wp\/v2\/posts\/2289","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hosting.airetech.es\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hosting.airetech.es\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hosting.airetech.es\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/hosting.airetech.es\/blog\/wp-json\/wp\/v2\/comments?post=2289"}],"version-history":[{"count":4,"href":"https:\/\/hosting.airetech.es\/blog\/wp-json\/wp\/v2\/posts\/2289\/revisions"}],"predecessor-version":[{"id":2340,"href":"https:\/\/hosting.airetech.es\/blog\/wp-json\/wp\/v2\/posts\/2289\/revisions\/2340"}],"wp:attachment":[{"href":"https:\/\/hosting.airetech.es\/blog\/wp-json\/wp\/v2\/media?parent=2289"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hosting.airetech.es\/blog\/wp-json\/wp\/v2\/categories?post=2289"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hosting.airetech.es\/blog\/wp-json\/wp\/v2\/tags?post=2289"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}