Altova DiffDog Server 2024 

En el caso de la comparación de directorios puede ver el resultado en formato texto o XML. Para ello defina las opciones --output-mode=text, or --output-mode=xml respectivamente. La opción --output-mode permite indicar el formato del informe comparativo (texto o XML), mientras que la opción --output-file permite indicar el nombre del archivo del informe.

 

La opción --output-mode=text no es compatible si los directorios que se comparan incluyen archivos XML y si --dir-compare-contents=true. El resultado de una comparación de archivos XML solo se puede guardar en formato XML.

 

Para entender cómo informa DiffDog Server de las diferencias entre directorios vamos a imaginar que tenemos que comparar estos dos directorios uno al lado del otro.

 

dir1/

|-- documents/

|-- Don Quixote.txt

|-- Metamorphosis.txt

dir2/

|-- Don Quixote.txt

|-- img1.png

|-- Metamorphosis.txt

dir1

dir2

 

Al compararlos con una herramienta gráfica de diferenciación como DiffDog (usando el modo de comparación rápida) las diferencias entre ambos directorios aparecen representadas como se puede ver en la imagen siguiente. Observe que en el directorio de la derecha se eliminó el subdirectorio documents y y se añadió el archivo img1.png. Asimismo, la hora de modificación del archivo Metamorphosis.txt ha cambiado.

dds_dir_comparison

Informe de comparación de DiffDog

En DiffDog Server puede ejecutar una comparación rápida entre estos dos directorios con el comando:

 

<exec> diff dir1 dir2 --output-mode=text --output-file=report.txt --dir-compare-sizes=true --dir-compare-mod-times=true

 

Nota:la comparación anterior es rápida porque no tiene en cuenta el contenido de los directorios, sino únicamente el tamaño y la fecha de modificación de los archivos que los directorios contienen. Para realizar una comparación más detallada que también tenga en cuenta el contenido de los archivos añada la opción --dir-compare-contents=true.

 

En el informe de texto que se produce tras ejecutar la comparación las diferencias se representan así:

 

< documents/

! Metamorphosis.txt

> img1.png

Informe de comparación de DiffDog Server (texto)

El símbolo "<" indica el lado izquierdo de la comparación, mientras que el símbolo ">" indica el lado derecho. La barra inclinada hacia la derecha indica que se trata de un directorio (y no se un archivo). La exclamación indica diferencias en el archivo correspondiente.

 

Al igual que en el caso de los informes de archivos, la información anterior se debe interpretar como instrucciones para hacer que ambos lados sean iguales. En este ejemplo las instrucciones serían:

 

1.Añada el subdirectorio documents en el directorio izquierdo

2.Copie el archivo Metamorphosis.txt del directorio izquierdo al derecho o viceversa.

3.Añada el archivo img1.png al directorio derecho.

 

Nota:el verbo "añadir" debe cambiarse por "eliminar" en función de la dirección en que se quiera combinar los directorios. En este ejemplo, para combinar cambios de izquierda a derecha el primer paso es "añadir" y el segundo "eliminar". Si la combinación se hace de derecha a izquierda, entonces el primer paso es "eliminar" y el segundo "añadir".

 

Informe XML

Ahora vamos a hacer la misma comparación cambiando solamente el formato del informe de texto a XML. En otras palabras, ahora el comando de comparación es:

 

<exec> diff dir1 dir2 --output-mode=xml --output-file=report.xml --dir-compare-sizes=true --dir-compare-mod-times=true

 

En el informe XML que se genera tras ejecutar la comparación las diferencias se reflejan así:

 

<?xml version="1.0" encoding="UTF-8"?>
<!--  Exportación de comparación generada por Altova DiffDog Server -->
<diff_result>
  <diff_info comparison_mode="quick">
    <source_left name="c:\dir1" uri="file:///c:/dir1"/>
    <source_right name="c:\dir2" uri="file:///c:/dir2"/>
  </diff_info>
  <file_diff location="">
    <left_content>
        <directory name="documents"/>
    </left_content>
    <changed_content>
        <file name="Metamorphosis.txt"/>
    </changed_content>
    <right_content>
        <file name="img1.png"/>
    </right_content>
  </file_diff>
</diff_result>

Informe de comparación de DiffDog Server (XML)

El elemento diff_info proporciona información sobre los directorios comparados (incluyendo el tipo de comparación usado y la ruta de acceso a los archivos de la comparación). Es un elemento que aparece solamente una vez.

 

En los informes de comparación de directorios el elemento dile_diff aparece solo una vez. Estos elementos pueden aparecer más de una vez: left_content, changed_content y right_content, que serían los equivalentes a los elementos "<" y ">" y "!" de los informes en formato texto y tienen el mismo significado que hemos explicado más arriba.

© 2017-2023 Altova GmbH