Estoy buscando la mejor y más segura manera de convertir una rama git en una etiqueta git. Al portar a mano un repositorio svn, básicamente copié todas nuestras ramas y teníamos una rama para cada versión menor (1.1, 1.2, 1.3) que honestamente probablemente no era la mejor manera de hacerlo, sino por el bien de velocidad, estaba más cómodo con las ramas que con las etiquetas en ese momento. Ahora tengo las ramas 1.5, 1.6, 1.7, 1.8, sin embargo, dado que solo tenemos una versión del código implementado en un momento dado, probablemente solo necesite que la última versión sea una rama en caso de que las soluciones rápidas tengan que ir a esa versión que está desplegado Así que estoy buscando la mejor forma de convertir una rama de git en una etiqueta de git. Creo que tengo una forma, pero estoy seguro de lo bueno que es.convirtiendo git branch en git tag
Lo que he hecho hasta ahora es que cada rama Quiero convertir a una etiqueta, He comprobado para asegurarse de que no hay confirmaciones en aquellas ramas que no están en la rama principal, así que lo hice:
git log 1.5 ^master
git log 1.6 ^master
git log 1.7 ^master
Todos estos me devuelven nada, lo que creo que significa que todas las confirmaciones en esas ramas existen en el maestro. Hice esto porque asumí que si hubiera commits en aquellas ramas que no estaban en master, las perdería al convertir la rama en una etiqueta ya que una etiqueta es solo un "puntero" para una confirmación y no una línea de desarrollo. Con esa aparente buena, mi suposición es que sólo tendría que hacer:
git tag 1.5v 1.5
git tag 1.6v 1.6
git tag 1.7v 1.7
Entonces sólo tendría que eliminar las ramas a nivel local e impulsar los cambios al repositorio remoto. ¿Es esta la mejor forma de convertir una rama de git en una etiqueta de git?
También me preocupa que alguien haya creado una rama de say 1.7 (que nadie debería) y ellos tomen los cambios que eliminan esa rama, ¿podrían fusionar esos cambios en otra rama (por ejemplo, maestro) o eso rompería la rama que crearon? Este es un caso que no debería ocurrir ya que no se debe crear sucursales de ninguna versión de rama que no sea la última versión, en este caso 1.8, pero las personas no siempre siguen el procedimiento correctamente, así que quiero asegurarme de que haya una manera para arreglar esto si sucede
[Aquí describí un método eficaz para convertir etiquetas de SVN a etiquetas git] (http://stackoverflow.com/a/20807602/815781) – Onlyjob