Necesito la fecha en un formato especial.
Con Git 2.21 (Q1 2019), se ha introducido un nuevo formato de fecha " --date=human" que transforma su salida dependiendo de qué tan lejos esté la hora de la hora actual .
" --date=auto" se puede usar para usar este nuevo formato cuando la salida va al localizador o al terminal y, de lo contrario, al formato predeterminado.
Ver commit 110a6a1 , commit b841d4f (29 de enero de 2019) y commit 038a878 , commit 2fd7c22 (21 de enero de 2019) por Stephen P. Smith (``) .
Ver commit acdd377 (18 Jan 2019) por Linus Torvalds ( torvalds) .
(Fusionada por Junio C Hamano - gitster- en commit ecbe1be , 07 feb 2019)
Agregar documentación de formato de fecha 'humana'
Muestre información de fecha y hora en un formato similar a cómo las personas escriben fechas en otros contextos.
Si no se especifica el año, el lector deduce que la fecha indicada es el año actual .
Al no mostrar la información redundante, el lector se concentra en la información que es diferente .
El parche informa las fechas relativas basadas en la información inferida de la fecha en la máquina que ejecuta el gitcomando en el momento en que se ejecuta el comando.
Si bien el formato es más útil para los humanos al descartar información inferida, no hay nada que lo haga realmente humano.
Si el ' relative' formato de fecha no estuviera implementado, usar ' relative' hubiera sido apropiado.
Agregar humanpruebas de formato de fecha.
Cuando se utilizan humanvarios campos, se suprimen dependiendo de la diferencia horaria entre la fecha de referencia y la fecha de la computadora local.
- En los casos en que la diferencia es inferior a un año, el campo de año se suprime.
- Si el tiempo es menos de un día; el mes y año se suprime.
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
## Reemplace el ' auto' modo propuesto con ' auto:'
Además de agregar el humanformato ' ', el parche agregó la autopalabra clave que podría usarse en el archivo de configuración como una forma alternativa de especificar el formato humano. Al eliminar 'auto' se limpia la humaninterfaz de formato ' '.
Se agregó la capacidad de especificar el modo ' foo' si el localizador se está utilizando mediante la auto:foosintaxis.
Por lo tanto, el auto:humanmodo de fecha predeterminado es humansi estamos usando el localizador.
Entonces puedes hacer:
git config --add log.date auto:human
y sus " git log" comandos mostrarán el formato legible para humanos a menos que esté escribiendo secuencias de comandos.
Git 2.24 (Q4 2019) simplificó el código.
Ver commit 47b27c9 , commit 29f4332 (12 de septiembre de 2019) por Stephen P. Smith (``) .
(Fusionada por Junio C Hamano - gitster- en commit 36d2fca , 07 oct 2019)
Deje de pasar 'ahora' al código de fecha
Commit b841d4f (Agregar humanformato a la herramienta de prueba, 2019-01-28, Git v2.21.0-rc0) agregó una get_time()función que permite $GIT_TEST_DATE_NOWen el entorno anular la hora actual.
Entonces ya no necesitamos interpretar esa variable cmd__date().
Por lo tanto, podemos dejar de pasar el nowparámetro " " a través de las funciones de fecha, ya que nadie las usa.
Tenga en cuenta que debemos asegurarnos de que todos los llamadores anteriores que tomaron un " now" parámetro están utilizando correctamente get_time().