2011-09-16 18 views
29

Combinando svn diff --ignore-EOL-estilo y --ignore-all-espacio no está funcionando:¿Cómo puedo ignorar los cambios de eol y todo el espacio en blanco en svn?

$ svn diff -x -w --ignore-eol-style -r 1143:1177 somefile 
svn: invalid option: --ignore-eol-style 

Y,

$ svn diff -x --ignore-eol-style -x --ignore-all-space -r 1143:1177 somefile 

ejecuta sólo la última opción: ignore-todo- espacio

¿Alguien ha tratado esto antes?

Respuesta

41

El comando parece svn para honrar solo una opción-x. Esto significa, debe/puede combinar todos opciones en una discusión :

svn diff -x "-w --ignore-eol-style" 

No he probado si esto también es cierto para diff-herramientas externas.

+2

¡Exactamente lo que necesitaba! –

+1

Si obtienes 'diff: opción no reconocida '--ignore-eol-style'' usa la forma corta en su lugar:' svn diff -x -w' – Lucas

+1

Cuando también quieres suprimir cualquier nueva línea introducida o eliminada, debes usar una externa programa diff y agregue algunas opciones 'svn diff --diff-cmd '/ usr/bin/diff' -x '-u --ignore-all-space -ignore-blank-lines' path1 path2' (-u le da estilo unificado como lo hace svn diff) –

1

Puede utilizar la herramienta de diferenciación externa con las opciones adecuadas (diff-cmd opción en la configuración de SVN). Compruebe this. Entonces tiene libertad para establecer cualquier herramienta de diferencias y proporcionarle argumentos. También se puede utilizar directamente:

svn diff --diff-cmd /usr/bin/diff --extensions "-b" -r 1143:1177 somefile 

donde -b a ignorar espacios en blanco al final de la línea y considerar todas las demás secuencias de uno o más caracteres de espacio en blanco para que sea equivalente,

Cuestiones relacionadas