Cómo ignorar los errores de espacio en blanco al final con git stash

Tengo un problema inusual con git. He sacado de un repository que no he usado en un momento, y para simplificar, digamos que tengo dos twigs, desarrollar y dominar. Ya estaba en desarrollo, y revisé maestro. No hice ningún cambio, solo estaba mirando los files. Cuando comencé a pagar, no pude porque README.md fue modificado. Git diff mostró que el file completo había cambiado, con contenido idéntico, así que pensé que era algún tipo de error de espacio en blanco.

Hice la comprobación de git – README.md, y todavía parecía modificada. Entonces probé git stash -p (así que podía esconder ese file). Eso me dio:

warning: 3 lines add whitespace errors. 

Continuó diciendo:

 warning: squelched 55 whitespace errors warning: 60 lines add whitespace errors. 

Y el file todavía se modifica.

¿Hay alguna forma de evitar estos errores? ¿Qué podría estar causando eso?

Como mencionó anteriormente, el problema se denomina espacio en blanco posterior .
Git tiene varias forms de manejar el espacio. Puedes leer sobre esto aquí:
https://git-scm.com/book/en/v2/Customizing-Git-Git-Configuration#_formatting_and_whitespace

Puede intentar y establecer los valores de configuration:

 $ git config --global core.whitespace \ trailing-space, \ -space-before-tab, \ indent-with-non-tab, \ tab-in-indent, \ cr-at-eol 

Cuando git emerge contenido de stash, lo vuelve a agregar al directory de trabajo usando el command apply para que pueda deshabilitar la advertencia de apply con esta configuration

 git config --global apply.whitespace nowarn or git config --global core.whitespace fix 

core.whitespace

Una list separada por comas de problemas comunes de espacios en blanco para notar.
git diff usará color.diff.whitespace para resaltarlos,
y git apply --whitespace=error los considerará como errores.

Puede prefijar - para desactivar cualquiera de ellos (por ejemplo, -trailing-space ):

blank-at-eol

trata los espacios en blanco al final de la línea como un error (habilitado por defecto).

space-before-tab

trata un carácter de espacio que aparece inmediatamente antes de un carácter de tabulación en la parte inicial de sangría de la línea como un error (habilitado por defecto).

indent-with-non-tab

trata una línea que está sangrada con caracteres de espacio en lugar de las tabs equivalentes como un error (no está habilitado de forma pnetworkingeterminada).

tab-in-indent

trata un carácter de tabulación en la parte inicial de sangría de la línea como un error (no habilitado por defecto).

blank-at-eof

trata las líneas en blanco agregadas al final del file como un error (habilitado por defecto).

trailing-space

es una abreviatura para cubrir tanto blank-at-eol como blank-at-eof.

cr-at-eol

trata un retorno de carro al final de la línea como parte del terminador de línea; es decir, con él, el espacio final no se activa si el carácter anterior a dicho retorno de carro no es un espacio en blanco (no está habilitado por defecto).

tabwidth=<n>

dice cuántas posiciones de personaje ocupa una pestaña; esto es relevante para sangría-con-no-pestaña y cuando Git corrige errores tab-in-indent. El ancho pnetworkingeterminado de la pestaña es 8. Los valores permitidos son de 1 a 63.