Fecha de confirmación de Git

192

Además de analizar el registro de git para la cadena de fecha, ¿hay una forma nativa de Git de informar la fecha de una determinada confirmación?

Samer Buna
fuente
1
Cosas buenas: git-scm.com/docs/pretty-formats
Nevin Chen

Respuestas:

268

El comando show puede ser lo que quieras. Tratar

git show -s --format=%ci <commit>

También hay disponibles otros formatos para la cadena de fecha. Consulte la página del manual para más detalles.

Tim Henigan
fuente
19
Para obtener el commit sin su diff, use en log -1lugar de show.
Josh Lee
36
O agregue los '-s' al comando:git show -s --format="%ci" <commit>
aprock
66
Para futuros usuarios: puede ver la fecha del autor con %ai.
user541686
44
para obtener solo la marca de tiempo de Unix: use git show -s --format =% ct <commit>
xiaoweiz
2
Si desea otro formato de fecha, puede usar git show -s --format=%cd --date=short <commit>(dará, por ejemplo, 2016-11-02) o git show -s --format=%cd --date=short <commit>o git show -s --format=%cd --date=format:%Y <commit>(este ejemplo imprimirá solo el año) Para más detalles, vea esta respuesta .
amee
27

Si desea ver solo la fecha de una etiqueta que haría:

git show -s --format=%ci <mytagname>^{commit}

lo que da: 2013-11-06 13:22:37 +0100

O hacer:

git show -s --format=%ct <mytagname>^{commit}

que da la marca de tiempo UNIX: 1383740557

Marcus Philip
fuente
19

Si desea tener la marca de tiempo sin la zona horaria pero la zona horaria local sí

git log -1 --format=%cd --date=local

Lo que da esto dependiendo de tu ubicación

Mon Sep 28 12:07:37 2015
Schoetbi
fuente
1

si tienes problemas con el comando cmd de Windows y .bat solo escapa de porcentajes como ese

git show -s --format=%%ct

El carácter% tiene un significado especial para los parámetros de la línea de comandos y los parámetros FOR. Para tratar un porcentaje como un carácter regular, duplíquelo: %%

Sintaxis: caracteres de escape, delimitadores y citas

Andrey Tikhonov
fuente