Registro git avanzado: colors diferentes para diferentes committers

Actualmente tengo este alias configurado en mi máquina con Windows: ("lastcd" = "LastCommitterDate")

[alias]

lastcd = "! f () {git log – $ 1 –pretty = formatting: '% C (amarillo)% h% C (restablecimiento) -% s% C (rojo) (% cn)% C (reinicio)% C (verde) (% cr)% C (restablecer) ';}; f "

Y la salida sería como se esperaba. Pero todos los nombres de los committers se muestran en rojo. ¿Es posible mostrar otros committers como rojos y mis propios commits como un color diferente?

Si la respuesta es "solo haz un guion"

Debo decepcionarte … Tengo poca experiencia con todo el guión … Unix … thingy … Nacido y criado en Windows. Intenté configurar scripts para git pero solo pude hacer que funcionaran dentro del file "C: \ users \ me.bashrc". ¿Y arrojar un montón de diferentes secuencias de copyr y pegar parece una mala práctica …?

Si alguien pudiera darme un recorrido por el process de configuration de un guión "hello world" que funcionaría en git bash, ¡sería un hombre muy feliz!

Saludos cordiales Edvin

No estoy seguro de que haya una forma de colorear el nombre de usuario solo con git, por lo que puede intentar lo siguiente:

git log --pretty=format:"%C(yellow)%h%C(reset) - %s %C(networking)(%cn)%C(reset) %C(green)(%cr)%C(reset)" | sed "s/\(($(git config --get user.name)\)/$(tput setaf 4)\1/" | less -R 

El command sed encuentra y agrega un color azul ( $(tput setaf 4) ) a su nombre de usuario de git ( $(git config --get user.name) ).

less -R emula el comportamiento del git log mostrando todos los colors.

Esto funciona usando bash en el sistema operativo en el que nací y crecí 😉