Répertoires
Lors de la comparaison des répertoires, vous pouvez consulter le rapport de comparaison soit sous le texte, soit sous le format XML (défini avec --output-mode). (Notez, toutefois, que les rapports sous format XML ne sont pas pris en charge si --dir-compare-contents=true ; ceci est dû au fait que le résultat des fichiers de comparaison XML peuvent être rapportés uniquement sous le format XML.) Pour comprendre comment DiffDog Server rapporte des différences entre les répertoires, imaginons que les deux répertoires suivants doivent être comparés côte-à-côte.
dir1/ |-- documents/ |-- Don Quixote.txt |-- Metamorphosis.txt | dir2/ |-- Don Quixote.txt |-- img1.png |-- Metamorphosis.txt |
dir1 | dir2 |
Lorsque les deux répertoires sont comparés dans l’interface graphique de DiffDog (capture d’écran ci-dessous), les différences entre les deux répertoires peuvent être vues clairement, comme affiché ci-dessous. Le sous-répertoire documents manque dans dir2, le fichier img1.png manque dans dir1, et le fichier Metamorphosis.txt a des horaires de modification différents.

Dans DiffDog Server, vous pouvez exécuter la commande ci-dessous pour comparer ces deux répertoires et recevoir un rapport de comparaison sous le format texte.
diffdogcmdlclient diff dir1 dir2 --output-mode=text --output-file=report.txt --dir-compare-sizes=true --dir-compare-mod-times=true
•Les options --output-mode et --output-file définissent le format de rapport en texte et spécifient l’emplacement dans lequel le rapport sera enregistré.
•La comparaison de répertoire est « rapide » car les contenus de fichiers ne sont pas recherchés (les options --dir-compare-contents n’ont pas été définies comme true ; son défaut est false).
•Aussi, dans une comparaison « rapide », seules la taille et les dates de modification des fichiers à l’intérieur des deux répertoires sont comparées (--dir-compare-sizes=true et --dir-compare-mod-times=true).
•Puisqu’il n’existe aucune option --quiet=true, le rapport de comparaison sera généré à la ligne de commande ainsi qu’à un fichier de sortie. Voir « Formats de rapports » sous la rubrique Résultats de comparaison.
Note : Le paramètre DiffDog pour des comparaisons de répertoires « rapides » vérifie uniquement la taille et les horaires de modification de leurs fichiers et sous-répertoires ; les contenus des fichiers ne sont pas comparés. Dans DiffDog Server, une comparaison « rapide » est le paramètre par défaut. Vous devez définir l’option --mode pour comparer les contenus de fichiers des répertoires.
Dans les sections ci-dessous, nous décrivons comment les résultats de comparaison sont affichés dans le texte et les rapports XML, respectivement.
Rapport Texte
Dans le rapport texte produit après l’exécution de la comparaison, les différences sont rapportées comme suit :
< documents/
! Metamorphosis.txt
> img1.png
Ces rapports de texte sont lus comme suit :
•"<" signifie que l’objet existe à gauche du répertoire uniquement.
•">" signifie que l’objet existe à droite du répertoire uniquement
•La barre oblique inclinée vers l'avant à la fin de la ligne indique un répertoire - à l’opposé d’un fichier (voir documents/ ci-dessus).
•Le caractère "!" indique des différences dans les fichiers correspondants.
Rapport XML
Nous allons à présent exécuter la même comparaison, et ne modifierons que le format du fichier de rapport de texte à XML.
diffdogcmdlclient diff dir1 dir2 --output-mode=xml --output-file=report.xml --dir-compare-sizes=true --dir-compare-mod-times=true
Dans le rapport XML produit après avoir exécuté la comparaison, les différences sont rapportées comme suit :
<?xml version="1.0" encoding="UTF-8"?>
<!-- Differencing export generated by 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>
Notez les points suivants sur le rapport XML :
•L'élément diff_info fournit des informations concernant les répertoires qui ont été comparés (y compris le mode de comparaison utilisé, et les chemins des fichiers répertoires). Cet élément ne se produit qu'une seule fois. (L’attribut comparison_mode indique la valeur fournie pour l’option --mode à la ligne de commande - ou la valeur par défaut de l’option (rapide) si aucune valeur n’a été fournie à la ligne de commande.)
•L’élément file_diff contient les différences et apparaît une seule fois.
•Les différences sont recensées en deux types d’élément : (i) left_content ou right_content et (ii) changed_content.
•L’élément left_content ou right_content affiche si ce côté contient un répertoire ou fichier que l’autre côté n’a pas.
•L’élément changed_content recense les répertoires ou fichiers qui ont changé.