¿Es una buena práctica crear una label en git para cada compilation de implementación?

Acabo de cambiar de Subversion a Git. La architecture centralizada de Subversion le da un número de revisión significativo que utilicé para build en el logging de cambios para nuestra aplicación basada en la web para facilitar el inicio de session y ver qué versión se está ejecutando en cualquier server dado. Git no tiene un número de compilation amigable. Más bien lo he visto sugiriendo que analices algo del resultado del git status de git status o las git tags .

No estoy seguro de que siempre usemos nombres fáciles de usar para nuestras sucursales (a veces los nombramos para un cliente individual que no quiere que se publique el uso de nuestro sistema). Así que estoy pensando que podría hacer que la compilation genere una label de date / timestamp como 2012-11-21_08-40-23 y la use de la manera en que solía usar el número de revisión de Subversion. La compilation solo generaría esta label y la agregaría a Git cuando construyamos un file war para la implementación, por lo que cualquier implementación en cualquier server generaría una label.

Actualmente nos desplegamos para probar cada pocos días, la integración unas pocas veces al mes (en ráfagas) y la producción cada dos meses.

Es posible que desee ver el script git-versión-gen para generar buenos numbers de versión.

Supone que tiene tags de la forma 'vX.Y' y le dará los numbers de versión como 'vX.Yz-aaaaaaaa' donde z es el número de confirmaciones ya que la label vX.Y y aaaaaaaa se acortan SHA de HEAD actual.

En cuanto a la estrategia de labeldo, definitivamente vale la pena labelr las versiones de lanzamiento de esta manera. Usarlo en la integración y la versión de testing depende de cuán rápido se mueva el desarrollo.

También funcionará en construcciones privadas de desarrolladores a medida que las tags se extraen del server de origen.

Más bien lo he visto sugiriendo que analices algo del resultado del estado de git o las tags git.

Fueron sugerencias desagradables. Realmente feo y cojo git describe la regla aquí más o less, leer man git describe será mucho más útil, que el status o la tag o el log o scripts de 3-parte listos para usar

Smth. así hagamos el truco de nombrar bien cualquier revisión (y solo puede labelr algunos sets de cambios, no todos publicados )

git describe --tags --long --match 'SUBSTRING-OF-CLIENT_TAGFAMILY*'

El objective del número de revisión en SVN era poder asociar el código liberado con una revisión específica en el control de fuente. Estoy pensando ahora que el labeldo es innecesario y que la respuesta a mi pregunta es simplemente usar el hash de confirmación generado por:

 git log -1 --format=%H 

Nunca respondí mi propia pregunta antes. Gracias a todos por sus respuestas. Les di a cada uno de ustedes un +1 por intentarlo. Me disculpo si mi pregunta fue mal networkingactada (en retrospectiva, lo fue). Si alguien quiere explicarme por qué esto es incorrecto y cómo solucionarlo (o hacerlo mejor), con mucho gusto aceptaré su respuesta como la correcta.

Una de las cosas que encontrará al cambiar de subversión a git es que varios conceptos tienen el mismo nombre pero significan cosas bastante diferentes.

Branches es uno de los más grandes. La mayoría de las tiendas que conozco usando git usan mucho las twigs. De hecho, para cada function, corrección de errores, tarea, etc., hay una twig. La sucursal es básicamente una construcción temporal mientras se desarrolla, revisa y testing localmente el código. Luego la twig se fusiona en maestra y eso se lleva al área (s) de control de calidad, y finalmente el maestro se empuja a la producción.

Sin embargo, nombrar una twig es una de esas cosas de estilo. Un colega que uso inits_pt575757_whatever para que pueda hacer reference al ID del sistema de seguimiento, el otro colega usa pete_1, ya que trata como algo temporal para él, que luego se fusionará y luego se eliminará.

Tiendo a ver las tags más usadas para las versiones principales, pero mmmv

Más información sobre el process general en http://sofes.miximages.com/a/9204499/631619