Data de confirmação do Git

192

Além de analisar o log do git para a sequência de datas, existe uma maneira nativa do Git de relatar a data de uma determinada confirmação?

Samer Buna
fonte
1
Good stuff: git-scm.com/docs/pretty-formats
Nevin Chen

Respostas:

268

O comando show pode ser o que você deseja. Experimentar

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

Outros formatos para a sequência de datas também estão disponíveis. Consulte a página do manual para obter detalhes.

Tim Henigan
fonte
19
Para obter o commit sem seu diff, use em log -1vez de show.
Josh Lee
36
Ou adicione '-s' ao comando:git show -s --format="%ci" <commit>
aprock
6
Para usuários futuros: você pode ver a data do autor com %ai.
precisa saber é o seguinte
4
para obter apenas unix timestamp: uso git show de -s --format =% ct <commit>
xiaoweiz
2
Se você quiser outro formato de data, poderá usar git show -s --format=%cd --date=short <commit>(fornecerá, por exemplo, 11/11/2016) ou git show -s --format=%cd --date=short <commit>ou git show -s --format=%cd --date=format:%Y <commit>(este exemplo imprimirá apenas o ano) Para obter detalhes, consulte esta resposta .
Amebe
26

Se você deseja ver apenas a data de uma tag, faria:

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

que dá: 2013-11-06 13:22:37 +0100

Ou faça:

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

que fornece o registro de data e hora do UNIX: 1383740557

Marcus Philip
fonte
19

Se você deseja ter o registro de data e hora sem o fuso horário, mas o fuso horário local,

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

O que fornece isso dependendo da sua localização

Mon Sep 28 12:07:37 2015
schoetbi
fonte
1

se você tiver problemas com o comando windows cmd e .bat, apenas escape porcentagens como essa

git show -s --format=%%ct

O caractere% tem um significado especial para os parâmetros da linha de comando e para os parâmetros FOR. Para tratar uma porcentagem como um caractere regular, dobre: ​​%%

Sintaxe: Caracteres de escape, delimitadores e citações

Andrey Tikhonov
fonte