online one files example commits branches git git-diff

files - git diff one file



Cómo mostrar espacios y pestañas con git-diff (2)

Nota: Git 2.5+ (Q2 2015) propondrá una opción más específica para la detección de espacios en blanco.

Ver commit 0e383e1 , 0ad782f y d55ef3e [26 de mayo de 2015] por Junio ​​C Hamano ( gitster ) .
(Combinado por Junio en commit 709cd91 , 11 de junio de 2015)

diff.c : --ws-error-highlight=<kind> opción --ws-error-highlight=<kind>

Tradicionalmente, solo nos importaban las roturas de espacios en blanco introducidas en nuevas líneas.
Algunas personas también quieren pintar roturas de espacios en blanco en líneas viejas. Cuando ven una rotura de espacios en blanco en una nueva línea, pueden detectar el mismo tipo de rotura de espacios en blanco en la línea anterior correspondiente y quieren decir "Ah, esas roturas están ahí pero fueron heredadas de la original, así que no las toquemos. ahora."

Introduzca la --ws-error-highlight=<kind> , que les permite pasar una lista separada por comas de old , new y context para especificar en qué líneas se destacan los errores de espacios en blanco.

La documentación ahora incluye :

--ws-error-highlight=<kind>

Resalte los errores de espacios en blanco en las líneas especificadas por <kind> en el color especificado por color.diff.whitespace .
<kind> es una lista separada por comas de old , new , context .
Cuando no se da esta opción, solo se resaltan los errores de espacios en blanco en las new líneas.

Por ejemplo, --ws-error-highlight=new,old resalta los errores de espacios en blanco en las líneas eliminadas y agregadas.
all se puede usar como una mano corta para el old,new,context .

Por ejemplo, la confirmación anterior tenía un error de espacio en blanco ( bbb ), pero solo puede centrarse en los nuevos errores:

(prueba realizada después de t/t4015-diff-whitespace.sh )

Actualice Git 2.11+ (Q4 2016, un año y medio después):

git config diff.wsErrorHighlight [old,new,context]

git diff/log --ws-error-highlight=<kind> carecía de la variable de configuración correspondiente para configurarlo de forma predeterminada. Eso se añade en Git 2.11.

Consulte commit 0b4b42e , commit 077965f , commit f3f5c7f (04 oct 2016) de Junio ​​C Hamano ( gitster ) .
(Fusionada por Junio ​​C Hamano - gitster - in commit e5272d3 , 26 de octubre de 2016)

Tengo la siguiente salida con git-diff.

- // sort list based on value + // sort list based on value

¿Cómo puedo ver fácilmente el número de pestañas / espacios eliminados al final de la línea?


Puedo pensar en múltiples opciones:

  • Configure Git para usar colores: git config --global color.ui true . Los espacios en blanco al final de las líneas ahora se resaltan en rojo.

  • Canaliza la salida de git diff través de cat : git diff | cat -A git diff | cat -A . La bandera -A le dice al cat que muestre caracteres no imprimibles (por ejemplo, ^I para la pestaña).