¿Qué herramientas de comparación de directorios puedo usar en OS X?

46

Estoy buscando una herramienta que pueda comparar directorios, no solo archivos. También es importante poder llamar a la herramienta desde la línea de comandos.

Sería genial tener una herramienta gratuita, si no es gratuita, especifique el precio.

Sorin
fuente

Respuestas:

5

Para todos los googlers ... echa un vistazo a las reglas de Beyond Compare it. Cuesta 30 $ o 50 $ para la versión Pro.

Mejillón
fuente
Por lo general, trato de evitar recomendar una solución comercial cuando existen alternativas gratuitas y de código abierto, pero BeyondCompare es un caso especial en el que vale cada centavo ... y también es multiplataforma. Lo he estado usando durante más de 10 años y he esperado mucho para obtener la versión de MacOS.
sorin
41

FileMerge (gratis), enviado con Xcode, ofrece una vista de directorio.
Una versión de línea de comando está disponible a través del opendiff de la aplicación Terminal.

kraymer
fuente
2
Me gustaría elegir esta respuesta porque opendiffpodría considerarse casi "incluida" con el OS X, pero cuando trato de diferenciar dos carpetas, se abre una vista fea que no era tan fácil de entender y tampoco pude ver cómo fusionar dos archivos en la vista de archivos. Estoy seguro de que es posible, pero si esta característica básica no es obvia, preferiría buscar algo mejor;)
sorin
23

Utilidad incorporada para macOS y Linux

Si no le importa usar el terminal, el diffcomando puede comparar directorios.
Esta utilidad también está disponible en la mayoría de las distribuciones de Linux.

diff -rq directory1/ directory2/

-rindica recurse a través de subdirectorios y -qproporciona una salida breve (es decir, no muestra las diferencias reales, solo tenga en cuenta qué archivos / directorios son diferentes).

Otras opciones útiles son:
-sinformar archivos idénticos,
-iignorar mayúsculas y minúsculas en el contenido del archivo,
--ignore-file-name-caseignorar mayúsculas y minúsculas al comparar nombres de archivos.

Si desea evitar advertencias (principalmente advertencias de utilidad) sobre las diferencias en los .DS_Storearchivos, utilice:

diff -rq directory1/ directory2/ | grep -v .DS_Store
Adam Parkin
fuente
17

Diffmerge debe cumplir con todos sus requisitos.

JRobert
fuente
Solo espero que hagan un instalador que pueda instalar los iniciadores de línea de comandos y mejorar la experiencia de instalación actual.
sorin
2
Este es un tema antiguo, pero lo instalé a través brew cask install diffmergey lo instalé sin problemas.
Rainer
Abr. 2016: todavía se mantiene y sigue siendo una de mis herramientas de desarrollo preferidas.
JRobert
4

Recientemente compré una copia de Kaleidoscope (aproximadamente $ 40 US). Es una aplicación limpia.

vimdiff también está disponible a través de la línea de comandos y es portable a través de la mayoría de los dominios UNIXy.

Nate
fuente
He estado usando Kaleidoscope durante algunos meses. Vale el precio. Sale a la venta ocasionalmente.
Ian C.
Kaleidoscope no te permite editar un archivo, ¡inútil!
mathieug
3

Otra buena herramienta para lograr esto es rsync, como se describe en Unix & Linux StackExchange . Para comparar dos carpetas puedes hacer

rsync -avun $SOURCE $TARGET

Y si realmente le preocupa la consistencia del archivo / la descomposición de bits, también existe la opción c para comparar sumas de verificación de archivos

rsync -avnc $SOURCE $TARGET
n1000
fuente
Gran referencia por su utilidad en todos los Unix 🙏🏻.
dan
2

La herramienta diff que viene con Text Wrangler de Bare Bones Software tiene comparación de directorios, aunque solo muestra qué archivos están en ambos directorios y cuáles están en cada uno de los directorios. Cuando selecciona un archivo que está en ambos, puede editar fusionando los cambios línea por línea con el clic de un botón. Sin embargo, no te permite mover archivos. Tienes que hacer esto externamente (por ejemplo, a través del Finder).
Creo que es una de las mejores opciones gratuitas.

Jason S
fuente
1

La solución más fácil: sincronice los archivos con Dropbox o similar, luego use WinMerge en Windows.

La utilidad FileMerge que se incluye con Xcode no compara carpetas y no combina / edita.

J. Kline
fuente
1

Deberías probar la poderosa combinación de software de código abierto . La versión para Mac se puede encontrar en Meld para OSX . Es compatible con la comparación de directorios y archivos y funciona muy bien en Mac.

Me dijeron que mejorara esta respuesta y explicara por qué la fusión es buena. En términos generales, Meld es un software de comparación de características completo utilizado principalmente en GNOME. Es mejor que una gran cantidad de software enumerado aquí porque

  1. Es gratis y de código abierto. Por lo tanto, no necesita preocuparse por la tarifa o la seguridad
  2. si no es más potente, es tan sofisticado como una gran cantidad de software que le pide mucho dinero
  3. es fácil de usar y no implica una configuración compleja o un comando de escritura en el terminal. Debería poder usarlo inmediatamente una vez que lo instale.

La parte que no es tan buena podría ser que se desarrolla bajo GTK. Entonces, a veces no se siente como la naturaleza de los programas MAC. Además, las versiones antiguas de MAC eran un poco defectuosas. Pero el último 3.19.2 que estoy usando actualmente funciona muy bien y nunca he encontrado un problema.

Mover
fuente
0

He estado comparando estructuras de carpetas grandes (DVD) en el pasado y he desarrollado una utilidad de línea de comandos para hacer esto. Recientemente hice la utilidad (CrcCheckCopy) gratuita y multiplataforma (MacOS y Windows).

CrcCheckCopy escanea la carpeta de origen y crea un archivo que contiene los sellos CRC de todos los archivos. Luego, este archivo se utiliza para comparar la carpeta de destino.

Puede obtenerlo desde aquí: https://www.starmessagesoftware.com/crccheckcopy Sus comentarios serán muy apreciados.

Micro
fuente