Manpages

NOM

debdiff - Comparer la liste des fichiers de deux paquets Debian

SYNOPSIS

debdiff [options]
debdiff
[options] ... deb1 deb2
debdiff
[options] ... changes1 changes2
debdiff
[options] ... --from deb1a deb1b ... --to deb2a deb2b ...
debdiff
[options] ... dsc1 dsc2

DESCRIPTION

debdiff prend en argument le nom de deux paquets Debian (fichiers .deb ou .udeb) et compare leur contenu (en comparant uniquement les fichiers principaux, sans les scripts de maintenance). Il affiche quels fichiers ont été ajoutés ou retirés entre deux paquets. Il est de ce fait utile pour pointer les fichiers perdus par inadvertance entre deux versions d’un paquet. Il vérifie également les permissions et propriétaires des fichiers et compare le fichier control des deux paquets à l’aide du programme wdiff. Pour une comparaison plus précise de deux paquets Debian, l’outil diffoscope peut être utilisé.

Si aucun paramètre n’est donné, debdiff essaie de comparer le contenu du répertoire source actuel avec la dernière version du paquet.

debdiff peut aussi gérer les changements entre des groupes de fichiers .deb de deux façons. La première consiste à indiquer deux fichiers .changes. Dans ce cas, les fichiers .deb listés dans les fichiers .changes seront comparés, en considérant ensemble le contenu de tous les fichiers .deb. Il est supposé que les fichiers .deb se trouvent dans le même répertoire que le fichier .changes. La deuxième façon consiste à indiquer la liste de fichiers .deb avec la syntaxe --from ... (depuis) et --to ... (vers). On peut ainsi vérifier que, lorsqu’un paquet est découpé en paquets plus petits, rien n’est perdu au passage.

debdiff examine les fichiers de configuration de devscripts comme décrit ci-dessous. Les options en ligne de commande permettent de remplacer les paramètres des fichiers de configuration.

Si deux paquets source (fichiers .dsc) sont fournis à debdiff, il comparera le contenu des paquets source. Si les paquets source ne diffèrent que par leur numéro de version Debian (c’est-à-dire que les fichiers .orig.tar.gz sont identiques dans les deux fichiers .dsc), alors interdiff(1) sera utilisé pour comparer les deux fichiers de rustine si ce programme est disponible sur le système, sinon, diff sera utilisé sur les deux arborescences des sources.

OPTIONS

--dirs, -d

Le mode opératoire par défaut est d’ignorer les noms de répertoire qui apparaissent dans la liste de fichiers ; mais avec cette option, ils seront pris en compte.

--nodirs

Ignorer les répertoires dont le nom apparaît dans la liste de fichiers. C’est le comportement par défaut. Cette option permet de remplacer un paramètre d’un fichier de configuration.

--move DEPUIS VERS, -m DEPUIS VERS

Il arrive parfois que différents fichiers ou répertoires soient déplacés entre deux versions. On peut régler le problème en utilisant cette option. Les deux arguments représentent les emplacements du répertoire ou du fichier dans le premier et dans le second paquet. Quand les listes de fichiers sont comparées, tous les fichiers de la première liste dont le nom commence par le premier argument sont traités comme s’ils commençaient par le second argument. Vous pouvez donner un nombre arbitraire d’arguments --move : ils sont interprétés dans l’ordre d’apparition. Cela affecte seulement les paquets binaires, pas les paquets source.

--move-regex DEPUIS VERS

Identique à --move, mais DEPUIS est traité comme une expression rationnelle et la commande de substitution perl s/^DEPUIS/VERS/ est appliquée aux fichiers. En particulier, VERS peut avoir des références arrières telles que $1.

--nocontrol

debdiff compare normalement les deux fichiers control respectifs avec wdiff(1). Cette option permet de désactiver cette fonctionnalité.

--control

Comparer les fichiers control respectifs, ce qui est le comportement par défaut. Cette option permet de remplacer un paramètre d’un fichier de configuration.

--controlfiles FICHIER[,FICHIER ...]

Indiquer quels fichiers de contrôle comparer. Par défaut, il s’agit juste de control, mais peut inclure postinst, config, etc. Les fichiers ne seront comparés que s’ils sont présents dans les deux fichiers .deb. La valeur spéciale ALL compare tous les fichiers de contrôle présents dans les deux paquets, à l’exception de md5sums. Cette option peut être utilisée pour remplacer les paramètres du fichier de configuration.

--wdiff-source-control

Lors du traitement des paquets source, comparer les fichiers de contrôle avec wdiff. C’est équivalent à l’option --control pour les paquets binaires.

--no-wdiff-source-control

Ne pas comparer les fichiers de contrôle des paquets source en utilisant wdiff. C’est le comportement par défaut.

--wp, --wl, --wt

Passe respectivement les options -p, -l ou -t à wdiff (cela affiche le wdiff complet, plutôt que juste les lignes modifiées).

--show-moved

Si plusieurs fichiers .deb sont fournis sur la ligne de commande, que la syntaxe utilisée soit des fichiers .changes soit la syntaxe --from/--to, alors cette option affichera également les fichiers (s’il y en a) qui ont été déplacés entre deux paquets. Les noms des paquets sont simplement déterminés par les noms des fichiers .deb.

--noshow-moved

Le comportement par défaut ; cette option permet de remplacer les paramètres d’un fichier de configuration.

--renamed DEPUIS VERS

Si l’option --show-moved est utilisée et qu’un paquet a été renommé au cours du processus, cette commande indique à debdiff de traiter le paquet de la première liste appelé DEPUIS comme s’il s’appelait VERS. Cette option peut être utilisée plusieurs fois.

--exclude MOTIF

Exclure les fichiers dont le nom de base correspond à l’expression. La pluralité d’emploi de cette option est possible. Noter que cette option est passée à diff et a le même comportement, ainsi seul le nom de base est considéré : en particulier, --exclude=’*.patch’ fonctionnera mais --exclude=’debian/patches/*’ n’aura pas d’effet en pratique.

--diffstat

Inclure le résultat de diffstat avant de produire le différentiel.

--no-diffstat

Le comportement par défaut ; cette option permet de remplacer les paramètres d’un fichier de configuration.

--auto-ver-sort

Lors de la comparaison de paquets source, comparer dans l’ordre des versions.

--no-auto-ver-sort

Comparer les paquets source dans l’ordre où ils ont été fournis sur la ligne de commande, même si cela force la comparaison entre un paquet avec une version supérieure et un paquet avec une version inférieure. C’est le comportement par défaut.

--unpack-tarballs

Lors de la comparaison des paquets source, ouvrir également les archives tar trouvées dans la racine des sources pour comparer leurs contenus en même temps que les autres fichiers. Il s’agit du comportement par défaut.

--no-unpack-tarballs

Ne pas ouvrir les archives tar se trouvant dans les paquets source.

--apply-patches

Si l’ancien et/ou le nouveau paquet est au format 3.0 (quilt), applique les patchs quilt (et supprime .pc/) avant la comparaison.

--no-apply-patches, --noapply-patches

Si l’ancien et/ou le nouveau paquet est au format 3.0 (quilt), n’applique les patchs quilt avant la comparaison. C’est le comportement par défaut.

--no-conf, --noconf

Ne lire aucun fichier de configuration. L’option ne peut être utilisée qu’en première position de la ligne de commande.

--debs-dir répertoire

Chercher les fichiers .dsc dans le répertoire au lieu du répertoire parent du répertoire source. Cela doit être soit un chemin absolu, soit un chemin relatif à la racine du répertoire source.

--help, -h

Afficher un résumé des options.

--version, -v

Affiche la version et le copyright.

--quiet, -q

Rester silencieux si aucune différence n’est trouvée.

--ignore-space, -w

Ignorer les blancs dans les diffs.

VARIABLES DE CONFIGURATION

Les deux fichiers de configuration /etc/devscripts.conf et ~/.devscripts sont évalués dans cet ordre par un interpréteur de commandes ("shell") pour placer les variables de configuration. Des options de ligne de commande peuvent être utilisées pour neutraliser les paramètres des fichiers de configuration. Les paramètres des variables d’environnement sont ignorés à cette fin. Si la première option donnée en ligne de commande est --noconf, alors ces fichiers ne sont pas évalués. Les variables actuellement identifiées sont :
DEBDIFF_DIRS

Lui attribuer la valeur yes équivaut à utiliser l’option --dirs.

DEBDIFF_CONTROL

Lui attribuer la valeur no équivaut à utiliser l’option --nocontrol. La valeur par défaut est yes.

DEBDIFF_CONTROLFILES

Définit les fichiers control à comparer, correspondant à l’option en ligne de commande --controlfiles. La valeur par défaut est control.

DEBDIFF_SHOW_MOVED

Lui attribuer la valeur yes équivaut à utiliser l’option --show-moved.

DEBDIFF_WDIFF_OPT

Cette option est passée à wdiff ; les valeurs possibles sont -p, -l ou -t.

DEBDIFF_SHOW_DIFFSTAT

Lui attribuer la valeur yes équivaut à utiliser l’option --diffstat de la ligne de commande.

DEBDIFF_WDIFF_SOURCE_CONTROL

Lui attribuer la valeur yes équivaut à utiliser l’option --wdiff-source-control de la ligne de commande.

DEBDIFF_AUTO_VER_SORT

Lui attribuer la valeur yes équivaut à utiliser l’option --auto-ver-sort de la ligne de commande.

DEBDIFF_UNPACK_TARBALLS

Lui attribuer la valeur no équivaut à utiliser l’option --no-unpack-tarballs de la ligne de commande.

DEBDIFF_APPLY_PATCHES

Lui attribuer la valeur yes équivaut à utiliser le paramètre --apply-patches de la ligne de commande. La valeur par défaut est no.

DEBRELEASE_DEBS_DIR

Indiquer le répertoire dans lequel chercher les fichiers .dsc, et est soit un chemin absolu ou un chemin relatif à la racine du répertoire racine. Cela correspond à l’option en ligne de commande --debs-dir. Cette directive peut être utilisée par exemple si vous utilisez systématiquement pbuilder ou svn-buildpackage pour construire vos paquets. Remarquez que cela concerne également debrelease(1), ce qui explique le nom étrange de l’option.

VALEURS DE RETOUR

Normalement, la valeur de retour est 0 si aucune différence n’a été trouvée et 1 en cas de différence. Dans le cas d’une erreur fatale, la valeur de retour sera 255.

VOIR AUSSI

debdiff-apply(1), diffstat(1), dpkg-deb(1), interdiff(1), wdiff(1), devscripts.conf(5), diffoscope(1)

AUTEUR

debdiff a été initialement écrit sous forme de script shell par Yann Dirson <dirson [AT] debian.org> et a été réécrit en Perl avec beaucoup plus de fonctionnalités par Julian Gilbey <jdg [AT] debian.org>. C’est un logiciel libre qui peut être redistribué suivant les termes de la licence publique générale GNU, version 2.

TRADUCTION

Ce document est une traduction, maintenue à l’aide de l’outil po4a <https://po4a.org/> par l’équipe de traduction francophone du projet Debian.

Nicolas François, Guillaume Delacour, Cyril Brulebois, Thomas Huriaux et David Prévot ont réalisé cette traduction.

L’équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. Veuillez signaler toute erreur de traduction en écrivant à <debian-l10n-french [AT] lists.org> ou par un rapport de bogue sur le paquet devscripts.

La version anglaise la plus à jour de ce document est toujours consultable en ajoutant l’option « -L C » à la commande man.