¿Cómo usar Git Log para formatear el historial de confirmaciones?



Git es una herramienta que ayuda a organizar y administrar el código fuente de sus aplicaciones. Aprenda todo sobre el comando git log format history y cómo usarlo.

En este artículo, analizaremos algunas opciones avanzadas para formatear e imprimir los registros de confirmación para obtener la información que necesita del historial de su diario de proyecto. Como ya lo sabemos mantiene un diario de los cambios comprometidos con el historial del proyecto, ahora exploraremos más formas en que el comando 'git log' es útil.

En primer lugar, estoy cambiando a / revisando la rama 'feature1' para un historial conveniente y más corto.
Usa los comandos -





$cd myProj–Cambiar al proyecto git

$función de pago de git1–Salta a la rama 'feature1'



1. Confirmar formato

1.1 Imprime con estilo el contenido de salida en un formato dado

Sintaxis: git log --pretty [=]

dónde, puede ser uno de una línea, corto, medio, completo, batán, correo electrónico, crudoy formato:
Cuando = parte se omite, por defecto es medio.

1.1.1 –pretty = online

Bonito registro de confirmación de impresión en una 'sola línea'
Mando: git log --pretty = en línea
Formatea la salida en secuencia:




Confirmar - historial de formato de registro de Git - Edureka

1.1.2 –pretty = short

Formatee la salida de confirmación 'corta' en el formato:
cometer (refname)
Autor:



1.1.3 –bastante = medio

Mando: git log --pretty = medium
Imprima la salida de confirmación en formato 'medio':
cometer
Autor :
Fecha:


1.1.4 –pretty = full

Mando: git log --pretty = completo
La salida tiene el formato:
cometer (refname)
Autor:
Cometer:


1.1.5 –bastante = más lleno

Mando: git log --pretty = más completo
cometer (refname)
Autor:
AuthorDate :
Cometer:
Fecha de cometer:


1.1.6 –pretty = correo electrónico

Mando: git log --pretty = email
Imprima la salida del registro en el formato de estilo de correo electrónico:
De
De:
Fecha:
Tema: [PARCHE]


1.1.7 –pretty = raw

Mando: git log --pretty = raw
El formato de salida del registro sin formato muestra la confirmación completa exactamente como se almacena en el objeto de confirmación.
cometer
árbol
padre
autor
cometer

1.1.8 –format:: formato personalizado

El formato le permite especificar qué información del objeto de confirmación desea imprimir en el registro de salida de confirmación
Consideremos los distintos marcadores de posición que ofrece esta opción como una función 'C printf' con la ayuda de fragmentos de código:

Mando: git log --pretty = formato: '% h% ad | % s% d [% an] '--date = short
Formato de salida:
| [nombre del autor]

% h = ID de hash-id / sha1commit reducidos
% H = ID largos de sha-1
%a = fecha de autor
% s = confirmar la línea de título del asunto
%re = nombres de puntero de referencia (rama, etiqueta)
%un = nombre del autor
-fecha = breve: imprime solo la fecha y no la hora en un formato legible

Ahora, ¿qué tal si hacemos esta salida más amigable para los humanos, usando colores?
Mando:
git log --pretty = formato: '% C (amarillo)% h% Creset% ad | % Cgreen% s% Creset% Cred% d% Creset% Cblue [% an] '--date = short


Algunos otros marcadores de posición utilizados en el fragmento de código anterior son:
% C (amarillo) : Convierte la siguiente cuerda en amarillo
% Cresta : Restablece la siguiente cadena al color predeterminado (blanco)
% Cverde : cambia la siguiente cadena a verde
%Supongo: Cambie la siguiente cadena a rojo
% Cazul: Hacer que el nombre del autor sea de color azul

No tiene que recordar y escribir todo el comando cada vez, solo use un nombre corto como alias de git Como se muestra abajo:
Mando:
git config --global alias.c-hist 'log --pretty = formato:'% C (amarillo)% h% Creset% ad | % Cgreen% s% Creset% Cred% d% Creset% Cblue [% an] '--date = short'

'C-hist' representa c ustomizado hist ory
Entonces, como habrías observado, estoy estableciendo mi configuración de git archivo con los valores.

aprender a usar Visual Studio

Ahora, para verificar el historial de la rama actual, todo lo que tiene que hacer es ejecutar el comando, así:
Mando: ir c-hist

1.2 –abbrev-commit: acorta el hash-id de confirmación de git

Mando: git log --abbrev-commit
El nombre completo del objeto de confirmación hexadecimal de 40 bytes se abrevia a 7 bytes predeterminados.


Vamos a aporrearlo con el '--una línea'Opción para una vista conveniente, así:
Mando: git log --abbrev-commit --oneline

Lo que es más interesante es que también puede especificar la longitud de bytes de sha-1 ids usando la opción '–abbrev =', como se muestra a continuación:
Mando: git log --abbrev-commit --abbrev = 5 --oneline



Claramente, los identificadores sha-1 resaltados se reducen a un tamaño de 5 bytes.

1.3 –no-abrev-commit

Muestra el nombre completo del objeto de confirmación hexadecimal de 40 bytes.
Esto niega –Abbrev-commit y aquellas opciones que implican
como '–en línea'.
Mando: git log --pretty = oneline --no-abbrev-commit



1.4 –fecha-relativa

Mando: git log - fecha relativa

Tenga en cuenta que este tiempo resaltado está sujeto a cambios con referencia a la hora en que ejecuta el comando en su sistema.

1,5 –fecha =

También puede formatear la fecha de los registros de confirmación en cualquiera de las siguientes opciones de formato:

1.5.1 –fecha = relativa

Mando :git log --date = relativo
Esto es sinónimo del comando anterior 'git log - fecha relativa”E imprime las mismas confirmaciones.

1.5.2 –fecha = local

Mando : git log --date = local

1.5.3 –fecha = iso

Mando: git log --date = iso

1.5.4 –fecha = iso-estricta

Mando: git log --date = iso-estricto

1.5.5 –fecha = rfc

Mando: git log --date = rfc

1.5.6 –fecha = corta

Mando: git log --date = corto

1.5.7 –date = raw (muestra la fecha en segundos)

Mando: git log --date = raw
Imprima el tiempo en segundos desde la unix epoc time (01 de enero de 1970) seguido de la zona horaria.

1.5.8 –fecha = humano

Mando: git log --date = humano

1.5.9 –fecha = unix

Muestra la fecha como unix epoc (UTC) hora.
Mando: git log --date = unix

1.6 –padres

Imprima también los padres de cada confirmación en el formato:
Mando: git log --padres
Comando de salida de Oneliner: git log --parents --oneline

Puntos a tener en cuenta:
C366419 es un compromiso de fusión, por lo tanto, tiene 2 padres respectivamente: feeb30c y 4920adc
Igualmente

1d67b50 es un compromiso de fusión, que resultó de la fusión f2ff2e4 y abb694b
078f9f5 es una confirmación de fusión creada mediante la fusión 9a2412e y ab3a5e5
Mientras, 86792c6 es la confirmación inicial, por lo tanto, no hay padre.

1.7 –niños

Imprime también los niños en el formulario
Mando: git log --children --oneline

Nota :
006b9ce es la última confirmación, por lo que aún no tiene ningún objeto de confirmación secundario. El próximo cambio que realice y confirme en esta rama será el objeto de confirmación secundario de este último id sha-1.

1.8 – gráfico

Dibuje una representación gráfica basada en texto del historial de confirmaciones antes de los identificadores de sha-1.
Mando: git log --graph
Salida mejorada del delineador: git log --graph --oneline


Esto le permite comprender cuándo, cómo y por qué y otras ramas se fusionaron en la rama actualmente desprotegida.

1.9 –show-linear-break

Mando: git log --show-linear-break
Este es un comando útil, para indicar una barrera entre 2 confirmaciones consecutivas que no pertenecen a una rama lineal, es decir, las confirmaciones que vienen de diferentes ramas.


Compare la salida anterior con la salida del comando 'git log –graph' que muestra claramente cómo se han fusionado las confirmaciones de 'ruptura lineal'.

Bonificación: resumir la salida del registro de git: 'git shortlog'

Los 'git shortlogEl comando ‘categoriza los registros de confirmaciones según el autor e imprime un resumen general, indicando las confirmaciones realizadas por cada autor.
Mando: registro corto de git log

Mando : git log shortlog -s
-s significa –summary, suprime la descripción de la confirmación y solo imprime el recuento de confirmaciones de cada autor, así:

Además, también puede formatear la salida utilizando los mismos marcadores de posición que se explican en '--pretty = formato' opción
Prueba el comando: git shortlog --format = '% h | % s '

Por lo tanto, estará de acuerdo en que esta salida tiene más sentido, ya que muestra la identificación y la de cada autor junto con el recuento total de confirmaciones.

Nota : Es interesante notar que puede encontrar muy fácilmente la rama que realizó una confirmación en particular. Merece la pena abordar esta discusión en profundidad en los próximos artículos.

Entonces, con eso, llegamos al final de esteHistorial de formato de registro de Gitblog, espero que les haya resultado informativo.

En esta publicación, aprendimos algunas técnicas de formato que imprimen la información del proyecto de una manera más personalizada y fácil de usar. Ahora debería saber cómo utilizar de forma eficaz los parámetros del comando 'git log' para extraer cualquier información que necesite sobre el código fuente de su historial comprometido. Entonces, con eso, llegamos al final de este artículo, espero que lo hayan encontrado informativo.

Si tiene curiosidad por saber más, puede consultar este por Edureka, una empresa de aprendizaje en línea de confianza con una red de más de 250.000 alumnos satisfechos repartidos por todo el mundo. El curso Edureka DevOps Certification Training ayuda a los alumnos a comprender qué es DevOps y a adquirir experiencia en varios procesos y herramientas de DevOps, como Puppet, Jenkins, Nagios, Ansible, Chef, Saltstack y GIT para automatizar varios pasos en SDLC.

Tienes una pregunta para nosotros? Menciónelo en la sección de comentarios de este artículo sobre “Historial de formato de registro de Git” y nos comunicaremos con usted.