Eu preciso da data em um formato especial.
Com o Git 2.21 (primeiro trimestre de 2019), foi introduzido um novo formato de data " --date=human
" que transforma sua saída dependendo da distância da hora atual .
" --date=auto
" pode ser usado para usar este novo formato quando a saída estiver indo para o pager ou para o terminal e, caso contrário, o formato padrão.
Consulte commit 110a6a1 , commit b841d4f (29 Jan 2019) e commit 038a878 , commit 2fd7c22 (21 Jan 2019) por Stephen P. Smith (``) .
Veja commit acdd377 (18 Jan 2019) por Linus Torvalds ( torvalds
) .
(Mesclado por Junio C Hamano - gitster
- in commit ecbe1be , 07 de fevereiro de 2019)
Adicione documentação de formato de data 'humano'
Exiba informações de data e hora em um formato semelhante ao modo como as pessoas escrevem datas em outros contextos.
Se o ano não for especificado, o leitor deduzirá que a data é informada no ano atual .
Ao não exibir as informações redundantes, o leitor se concentra nas informações que são diferentes .
O patch relata datas relativas com base nas informações inferidas a partir da data na máquina que está executando o git
comando no momento em que o comando é executado.
Embora o formato seja mais útil para os seres humanos ao eliminar informações inferidas, não há nada que o torne realmente humano.
Se o relative
formato de data ' ' já não estivesse implementado, o uso de ' relative
' seria apropriado.
Adicione human
testes de formato de data.
Ao usar human
vários campos, são suprimidos, dependendo da diferença de horário entre a data de referência e a data do computador local.
- Nos casos em que a diferença é menor que um ano, o campo do ano é suprimido.
- Se o tempo for inferior a um dia; o mês e o ano são suprimidos.
check_date_format_human 18000 "5 hours ago" # 5 hours ago
check_date_format_human 432000 "Tue Aug 25 19:20" # 5 days ago
check_date_format_human 1728000 "Mon Aug 10 19:20" # 3 weeks ago
check_date_format_human 13000000 "Thu Apr 2 08:13" # 5 months ago
check_date_format_human 31449600 "Aug 31 2008" # 12 months ago
check_date_format_human 37500000 "Jun 22 2008" # 1 year, 2 months ago
check_date_format_human 55188000 "Dec 1 2007" # 1 year, 9 months ago
check_date_format_human 630000000 "Sep 13 1989" # 20 years ago
## Substitua o auto
modo ' ' proposto por ' auto:
'
Além de adicionar o human
formato ' ', o patch adicionou a auto
palavra - chave que poderia ser usada no arquivo de configuração como uma maneira alternativa de especificar o formato humano. Remover 'auto' limpa a human
interface do formato ' '.
Adicionada a capacidade de especificar o modo ' foo
' se o pager estiver sendo usado usando auto:foo
sintaxe.
Portanto, o auto:human
modo ' ' data é o padrão human
se estivermos usando o pager.
Então você pode fazer:
git config --add log.date auto:human
e seus git log
comandos " " mostrarão o formato legível por humanos, a menos que você esteja criando scripts.
O Git 2.24 (quarto trimestre de 2019) simplificou o código.
Consulte commit 47b27c9 , commit 29f4332 (12 set 2019) por Stephen P. Smith (``) .
(Mesclado por Junio C Hamano - gitster
- in commit 36d2fca , 07 out 2019)
Pare de passar o código 'agora' para a data
A confirmação b841d4f (Adicionar human
formato à ferramenta de teste, 2019-01-28, Git v2.21.0-rc0) adicionou uma get_time()
função que permite que $GIT_TEST_DATE_NOW
o ambiente substitua a hora atual.
Portanto, não precisamos mais interpretar essa variável cmd__date()
.
Portanto, podemos parar de passar o " now
" parâmetro através das funções de data, pois ninguém as utiliza.
Observe que precisamos garantir que todos os chamadores anteriores que usaram um now
parâmetro " " estejam usando corretamente get_time()
.