Hay docenas de herramientas de comparación/sincronización/combinación de archivos/carpetas, pero estoy buscando una interfaz gráfica específica y una funcionalidad que sea bastante simple pero, lamentablemente, bastante difícil de encontrar:
Estoy haciendo esa comparación como todos los días para sincronizar manualmente carpetas entre máquinas que usan un disco portátil. Mi carpeta típica contiene alrededor de 30 000 archivos en 5 000 subcarpetas y tiene un total de alrededor de 30 Gbytes. Debido al tamaño, en realidad no comparo el contenido del archivo, sino solo las marcas de tiempo. Una sesión típica toma alrededor de 2-3 minutos para los cambios de un día. Después de, por ejemplo, un mes de cambios, puede tomar alrededor de 15 minutos porque hay más para revisar.
Poder hacer la comparación manualmente es importante porque, por ejemplo, puedo haber movido, copiado o eliminado un archivo por accidente durante el día sin darme cuenta, y puedo descubrirlo y corregirlo durante la comparación. Es imposible hacer esto automáticamente; necesita un proceso manual y una interfaz gráfica conveniente.
He estado usando araxis merge por más de 10 años. Su modelo de uso es exactamente como se describe y quedé muy contento con él, al menos en Windows. Desafortunadamente, no solo es comercial, sino que tampoco está disponible para Linux. Usarlo sobre el vino es una experiencia muy pobre. Peor aún, al actualizar a Kubuntu 14.04 con Wine 1.4-1.7, el programa se congela cuando lo muevo a otra pantalla. Así que estoy buscando alternativas una vez más.
Beyond compare ofrece la misma funcionalidad y está disponible para Linux, pero nuevamente, es comercial. Además, no puede expandir carpetas automáticamente como la combinación de Araxis (solo si contienen archivos nuevos o modificados). Tienes que expandir todas las carpetas para ver las diferencias.
También probé meld , que es gratuito y está disponible para Linux. Parece que ofrece la misma funcionalidad, y es bastante bonito. Desafortunadamente, es extremadamente lento y su interfaz deja de responder, por lo que es prácticamente inútil en carpetas grandes como la mía.
Entonces, ¿hay alguna otra alternativa en Linux, preferiblemente gratuita, que ofrezca esta funcionalidad como la descrita anteriormente?
Hay un candidato interesante que no mencionaste: no traté de adaptarlo a tus requisitos, pero ciertamente vale la pena intentarlo.
Creo que KDE kompare
es una de las mejores herramientas en esta área, directorioy diff GUI .
Como no necesita una herramienta de combinación, puede ser una ventaja que tenga una interfaz de usuario menos compleja, en comparación con, meld
por ejemplo.
Pero, por otro lado, es posible que esté utilizando algunas funciones de la interfaz de usuario relacionadas con mergetool que pueden faltar aquí.
Lo que ve en la captura de pantalla es un grupo de ventanas acoplables, por lo que puede organizar u ocultar libremente partes de él.
Hay listas de archivos, una lista de pares de archivos coincidentes, una lista de "fragmentos" de diferencia y la vista de diferencias de texto.
Lo que no se muestra es un panel que muestra la diferencia de texto.
Independientemente de la funcionalidad en sí, la configurabilidad detallada y consistente de las GUI de KDE también debería ser útil si se usa con frecuencia.
"Kompare" del cargador original fue Robamler en en.wikipedia - Transferido de en.wikipedia; se indicó que la transferencia fue realizada por el usuario: Nog2.. Con licencia de Creative Commons Attribution-Share Alike 3.0 a través de Wikimedia Commons
Darle una oportunidad,sudo apt-get install kompare
EDITAR: Mi mal, ignore la respuesta, no vi que las comparaciones automáticas son algo que no desea usar. El uso de la salida --verbose de rsync podría ayudar de todos modos a ver las diferencias, incluso si solo usa la --dry run
opción.
Según el uso que está describiendo, rsync
podría ser una alternativa muy rápida. Digamos que tiene una carpeta llamada Important_stuff
que desea mantener sincronizada entre una computadora y un disco duro externo. Podrías usar el comando:
rsync --recursive --update --times --verbose --exclude=Music* 'path/to/Important_stuff/ /path/to/externalhd/Important_stuff_backup
La --recursive
opción irá a la profundidad de la carpeta para subcarpetas y archivos, la --update
opción solo reemplazará los archivos más antiguos con archivos más nuevos con el mismo nombre y agregará a la carpeta de destino archivos nuevos mientras deja todo lo demás en su lugar. La --times
opción le dice a rsync que use solo la marca de tiempo para hacer las comparaciones, --verbose
es tener una salida del comando, especialmente si aparecen problemas y --exclude
ayuda a excluir archivos y carpetas que no desea duplicar. Hay que tener cuidado con la ruta: la carpeta de origen necesita un '/' al final, mientras que el destino no lo necesita.
El comando se puede escribir en un archivo de texto, de modo que la próxima vez que desee sincronizar cosas simplemente haga: sh Impstuff_to_disk.sh
.
He estado usando este método durante años y funciona bien para copias de seguridad manuales periódicas. El método no involucra ninguna GUI, pero puede usar un administrador de archivos como Double Commander para comparaciones simples. La captura de pantalla muestra la selección de archivos que existen en una carpeta y no en la otra (Marcar>Comparar directorios):
¿Puedo sugerirle que pruebe kdiff3 ? Si bien la interfaz gráfica no es exactamente como usted especifica, ya que enumera una representación fusionada con los diferentes archivos y directorios codificados por colores, puede realizar casi todas las operaciones que necesita más fusiones de 3 vías.
steve barnes