diff - office - mejorar fuentes linux
¿Cómo comparo dos árboles de fuentes en Linux? (5)
Tengo dos directorios que contienen archivos de origen a un proyecto que he heredado con poca documentación. ¿Cómo comparo ambos directorios para ver cuáles son las diferencias? Gracias.
El comando diff para comparar directorios seguía diciéndome que no tenía diferencias, cuando sabía que había diferencias.
En lugar de usar diff directamente, usé una lista ordenada de md5sums y luego comparé esos archivos con diff:
find /path1/dir/ -type f -exec md5sum {} + | awk ''{print $2 $1}'' | sort >! path1.log
find /path2/dir/ -type f -exec md5sum {} + | awk ''{print $2 $1}'' | sort >! path2.log
gvimdiff path1.log path2.log
Si la parte inicial del camino está causando dolores de cabeza, cámbielo. Seleccione la ventana Path1 y escriba:
:%s|path1|path2|g
Esto reemplazará todas las instancias de path1 con path2 en el primer archivo, y ahora su diff solo debe mostrar las diferencias.
Prueba esto:
diff -Naur dir1/ dir2/
- La opción
-u
hace que la salida sea un poco más fácil de leer. - La opción
-r
recurre en todos los subdirectorios - Las opciones
-N
y-a
son realmente solo necesarias si desea crear un archivo de parche.
Puede probar MELD: http://meld.sourceforge.net/ que es una maravillosa herramienta de visualización visual ;-)
puede usar el comando diff en el shell. O instala una herramienta como kdiff3
diff -u -r dirA dirB
Le mostrará una diferencia recursiva unificada entre los archivos en dirA y dirB