949 votos

¿Git commit mayor de etiqueta?

Somos nuevos en git, y quiero poner una etiqueta al principio de nuestro repositorio. Nuestro código de producción es el mismo que el repositorio de principio, pero luego hicimos seno se compromete. Una etiqueta al principio nos permitiría hacer "retroceder" producción a un estado conocido y estable.

¿Cómo agregar una etiqueta a un commit arbitraria, más viejo?

1509voto

dkinzer Puntos 6339

Ejemplo:

$git tag -a v1.2 9fceb02 -m "Message here"

Donde 9fceb02 es la parte del principio de la identificación del compromiso.

Entonces usted puede empujar usandogit push --tags origin master

Puedes hacer git log para mostrar todo el commit id en su rama actual.

Usted puede encontrar un buen capítulo sobre etiquetado

144voto

Phrogz Puntos 112337

Solo el Código

# Set the HEAD to the old commit that we want to tag
git checkout 9fceb02

# temporarily set the date to the date of the HEAD commit, and add the tag
GIT_COMMITTER_DATE="$(git show --format=%aD | head -1)" git tag -a v1.2 -m"v1.2"

# set HEAD back to whatever you want it to be
git checkout master

Detalles

La respuesta por @dkinzer crea etiquetas de cuya fecha es la fecha actual (cuando se ejecutó el git tag de comandos), no de la fecha de la confirmación. El Git ayuda para tag tiene una sección "Sobre la Retroactividad de las Etiquetas" que dice:

Si ha importado algunos cambios desde otro VCS y quisiera agregar etiquetas para las versiones principales de su trabajo, es útil ser capaz de especificar la fecha de incrustar dentro de la etiqueta object; estos datos en la etiqueta de objeto afecta, por ejemplo, el orden de las etiquetas en el gitweb de la interfaz.

Para establecer la fecha utilizada en el futuro de la etiqueta de objetos, establezca la variable de entorno GIT_COMMITTER_DATE (ver la discusión posterior de los valores posibles; la forma más común es "AAAA-MM-DD HH:MM").

Por ejemplo:

$ GIT_COMMITTER_DATE="2006-10-02 10:31" git tag -s v1.0.1

La página de "Cómo Etiquetar en Git" nos muestra que podemos extraer el momento de la HEAD cometer a través de:

git show --format=%aD  | head -1
#=> Wed, 12 Feb 2014 12:36:47 -0700

Podríamos extraer de la fecha de un determinado cometer a través de:

GIT_COMMITTER_DATE="$(git show 9fceb02 --format=%aD | head -1)" \
git tag -a v1.2 9fceb02 -m "v1.2"

Sin embargo, en lugar de repetir el cometer dos veces, parece más fácil cambiar la HEAD a que se comprometen y utilizar de forma implícita en ambos comandos:

git checkout 9fceb02 

GIT_COMMITTER_DATE="$(git show --format=%aD | head -1)" git tag -a v1.2 -m "v1.2"

96voto

pnollet Puntos 648

La forma más sencilla de hacer esto es

git tag "v1.0.0" f4ba1fc

con f4ba1fc siendo el inicio del hash de la confirmación que desee etiquetar y "v1.0.0" siendo la versión que desee etiquetar.

Iteramos.com

Iteramos es una comunidad de desarrolladores que busca expandir el conocimiento de la programación mas allá del inglés.
Tenemos una gran cantidad de contenido, y también puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X