Tagging & Versioning en Git
Lección 51 / 53
Git Guía Git Guía Git español
Siempre teniendo en cuenta que Git en sí mismo no es prescriptivo en el uso de etiquetas, son etiquetas que apuntan a un solo commit, para una gestión eficiente de un proyecto, es recomendable definir algunas pautas relacionadas con el uso de etiquetas en Git.
Podemos decir que las etiquetas de Git se suelen utilizar para indicar una determinada versión o lanzamiento del software. Las modalidades específicas pueden depender de un proyecto a otro. Por ejemplo, los proyectos que esperan que la versión actual se guarde en un archivo determinado pueden tener un commit donde se guarda la versión y agregar una etiqueta con la misma versión a ese commit. Otros proyectos pueden etiquetar cualquier commit como una versión (recuerda siempre que un commit es un snapshot).
De manera similar a lo que vimos anteriormente para los commit convencionales, también existen varias convenciones para versionar un proyecto de software, una de las más conocidas es la semantic versioning o semver.
En el semantic versioning la versión se representa mediante tres números, separados por un punto, cada uno de los cuales representa cómo ha cambiado la nueva versión o lanzamiento en comparación con la anterior, en particular:
- es primer número es la major version, que aumentará cuando el cambio sea compatible con versiones anteriores
- el segundo número es la minor version, que aumentará a medida que se agreguen funciones, pero aún es compatible con versiones anteriores
- el tercer número es la patch version, que aumentará al corregir errores compatibles con versiones anteriores
Con esta convención podemos entender que:
- 0.2.0 - es un proyectos en las fases iniciales de desarrollo (la versión major es 0), no está dicho que cambiará de forma compatible
- 1.0.0 - es la primera versión “oficial”
- 1.0.3 - es el tercer lanzamiento de fix de la versión 1.0, no hay nuevas funciones respecto a la 1.0, sino solo correcciones de errores
- 1.1.0 - es el primer lanzamiento con nuevas funciones de la versión 1, pero todavía compatible con la versión 1
- 2.0.0 - es el primer lanzamiento no compatible con la versión 1
- 2.1.0-alpha.1 - es un pre lanzamiento de la futura versión 2.1.0
La información adicional sobre el semantinc versioning la podéis encontrar en Semver.
Desde el punto de vista de las etiquetas de Git, si se sigue el semantic versioning, la sugerencia es usar el número de versión con la letra v delante como etiqueta. Por lo tanto, las etiquetas en este caso serían v0.2.0, v1.0.3, v1.1.0, v2.1.0-alpha.1 y así sucesivamente.
Obviamente, las etiquetas de Git son útiles para marcar qué commit (y, por lo tanto, qué snapshot de la base de código) corresponde a una determinada versión o lanzamiento, pero para mantener posiblemente dos "líneas de desarrollo" (por ejemplo, trabajando en la versión 2 mientras se continúa dando soporte a la versión 1), será necesario encontrar otros modos y flujos de trabajo basados en otras características de Git (por ejemplo, branch)
Anterior
50 Mensajes de commit e..Siguiente
52 La opción merge en ..