BEZEICHNUNG

debdiff - vergleicht Dateilisten in zwei Debian-Paketen

ÜBERSICHT

debdiff [Optionen]
 
debdiff [Optionen] … deb1 deb2
 
debdiff [Optionen] … Änderungen1 Änderungen2
 
debdiff [Optionen] … --from deb1a deb1b … --to deb2a deb2b …
 
debdiff [Optionen] … dsc1 dsc2

BESCHREIBUNG

debdiff nimmt die Namen zweier Debian-Pakete (.debs oder .udebs) auf der Befehlszeile entgegen und vergleicht ihren Inhalt (dabei werden nur die Dateien im Hauptpaket berücksichtigt, nicht die Betreuerskripte). Es zeigt, welche Dateien eingeführt und welche zwischen den beiden Dateien entfernt wurden. Es ist daher nützlich, um Dateien ausfindig zu machen, die möglicherweise versehentlich zwischen zwei Revisionen des Pakets verloren gingen. Es prüft außerdem die Dateibesitzer und Zugriffsrechte und vergleicht die Steuerdateien der beiden Pakete mittels des Programms wdiff. Falls Sie zwei Debian-Pakete genauer vergleichen wollen, können Sie das Werkzeug diffoscope benutzen.
Falls kein Argument angegeben wurde, versucht debdiff, den Inhalt des aktuellen Quellverzeichnisses mit der neuesten Version des Pakets zu vergleichen.
debdiff kann außerdem Änderungen zwischen Gruppen von .deb-Dateien auf zwei Arten handhaben. Die erste ist, zwei .changes-Dateien anzugeben. In diesem Fall werden die in der .changes-Datei aufgeführten .deb-Dateien verglichen, indem der Inhalt aller aufgelisteten .deb-Dateien zusammengenommenen wird. (Es wird davon ausgegangen, dass die .deb-Dateien im gleichen Verzeichnis wie die .changes-Datei liegen.) Die zweite Art besteht darin, die .deb-Dateien von Interesse insbesondere mit der Syntax --from--to aufzulisten. Diese beiden helfen, falls ein Paket in mehrere kleinere Pakete zerteilt wurde und sichergestellt werden soll, dass zwischenzeitlich nichts verloren ging.
debdiff untersucht die devscripts-Konfigurationsdateien wie nachfolgend beschrieben. Befehlszeilenoptionen setzten jedoch die Konfigurationsdateieinstellungen außer Kraft.
Falls debdiff zwei Quellpakete (.dsc-Dateien) übergeben wurden, wird es den Inhalt der Quellpakete vergleichen. Falls sich die Quellpakete nur in der Debian-Revisionsnummer unterscheiden (sprich, die .orig.tar.gz-Dateien sind in beiden .dsc-Dateien gleich), dann wird interdiff(1) benutzt, um die beiden Patch-Dateien zu vergleichen, falls das Programm auf dem System verfügbar ist. Andernfalls wird ein diff zwischen beiden Quellverzeichnisbäumen durchgeführt.

OPTIONEN

--dirs, -d
Im Standardbetriebsmodus werden Verzeichnisnamen, die in der Dateiliste auftauchen, ignoriert, sie werden aber, wenn diese Option angegeben wurde, berücksichtigt.
--nodirs
ignoriert Verzeichnisnamen, die in der Dateiliste erscheinen. Dies ist die Vorgabe und kann benutzt werden, um die Einstellungen der Konfigurationsdatei außer Kraft zu setzen.
--move VON BIS, -m VON BIS
Manchmal kommt es vor, dass unterschiedliche Dateien oder Verzeichnisse zwischen Revisionen hin- und hergeschoben werden. Dies kann mithilfe dieser Option gehandhabt werden. Es gibt zwei Argumente, das erste gibt den Speicherort des Verzeichnisses oder der Datei im ersten Paket und das Zweite den im Zweiten an. Alle Dateien in der ersten Auflistung, deren Name mit dem ersten Argument beginnt, werden beim Vergleich der Dateilisten so angesehen, als ob dies durch das zweite Argument ersetzt worden wäre. Es kann eine beliebige Anzahl von --move-Argumenten angegeben werden; sie werden in der Reihenfolge verarbeitet, in der sie erscheinen. Dies betrifft nur das Vergleichen von Binärpaketen, nicht das von Quellpaketen.
--move-regex VON BIS
Dies ist identisch mit --move, außer dass VON als ein regulärer Ausdruck angesehen wird und der perl-Ersetzungsbefehl s/^VON/BIS/ auf die Dateien angewendet wird. Insbesondere kann BIS Gebrauch von Rückverweisen wie $1 machen.
--nocontrol
debdiff wird normalerweise die jeweiligen Steuerdateien der Pakete mittels wdiff(1) vergleichen. Diese Option unterdrückt diesen Teil der Verarbeitung.
--control
vergleicht die jeweiligen Steuerdateien. Dies ist die Vorgabe und es kann verwendet werden, um eine Einstellung der Konfigurationsdatei außer Kraft zu setzen.
--controlfiles DATEI[,DATEI …]
gibt an, welche Steuerdateien verglichen werden sollen; standardmäßig ist dies nur control, könnte aber auch postinst, config und so weiter umfassen. Dateien werden nur verglichen, falls sie in beiden verglichenen .debs enthalten sind. Der Spezialwert ALL vergleicht alle Steuerdateien, die es in beiden Paketen gibt, außer md5sums. Diese Option kann benutzt werden, um eine Konfigurationsdateieinstellung außer Kraft zu setzen.
--wdiff-source-control
vergleicht Steuerdateien, wenn Quellpakete verarbeitet werden, mittels wdiff. Entspricht der Option --control für Binärpakete.
--no-wdiff-source-control
vergleicht keine Steuerdateien in Quellpaketen mittels wdiff. Dies ist die Vorgabe.
--wp, --wl, --wt
übergibt eine -p-, -l- beziehungsweise -t-Option an wdiff. (Dies liefert die ganze wdiff-Ausgabe statt nur den Zeilen mit irgendwelchen Änderungen).
--show-moved
Falls mehrere .deb-Dateien auf der Befehlszeile angegeben wurden, entweder mit den .changes-Dateien oder mit der --from-/--to-Syntax, wird diese Option außerdem (falls vorhanden) Dateien anzeigen, die zwischen Paketen verschoben wurden. (Die Paketnamen werden einfach aus den Namen der .deb-Dateien bestimmt.)
--noshow-moved
das Standardverhalten; kann benutzt werden, um Konfigurationsdateieinstellungen außer Kraft zu setzen.
--renamed VON BIS
Falls --show-moved verwendet wird und ein Paket in dem Prozess umbenannt wurde, weist dieser Befehl debdiff an, das Paket in der ersten, VON genannten Liste, so zu betrachten, als ob es BIS genannt würde. Es ist erlaubt, diese Option mehrfach zu benutzen.
--exclude MUSTER
Exclude files whose basenames match PATTERN. Multiple uses of this option are permitted. Note that this option is passed on to diff and has the same behaviour, so only the basename of the file is considered: in particular, --exclude='*.patch' will work, but --exclude='debian/patches/*' will have no practical effect.
--diffstat
beinhaltet das Ergebnis von diffstat vor dem erzeugten Diff
--no-diffstat
das Standardverhalten; kann benutzt werden, um Konfigurationsdateieinstellungen außer Kraft zu setzen.
--auto-ver-sort
Wenn Quellpakete verglichen werden, soll dies in der Reihenfolge ihrer Versionen getan werden.
--no-auto-ver-sort
vergleicht zwei Quellpakete in der Reihenfolge, in der sie auf der Befehlszeile übergeben wurden, sogar, wenn dies bedeutet, dass ein Paket mit einer höheren Versionsnummer mit einem mit einer niedrigeren Version verglichen wird. Dies ist das Standardverhalten.
--unpack-tarballs
Wenn Quellpakete verglichen werden, werden außerdem Tarbälle entpackt, die auf der obersten Stufe des Quellverzeichnisbaums liegen, um ihren Inhalt zusammen mit den anderen Dateien zu vergleichen. Dies ist das Standardverhalten.
--no-unpack-tarballs
entpackt keine Tarbälle innerhalb von Quellpaketen.
--apply-patches
If the old and/or new package is in 3.0 (quilt) format, apply the quilt patches (and remove .pc/) before comparison.
--no-apply-patches, --noapply-patches
If the old and/or new package is in 3.0 (quilt) format, do not apply the quilt patches before comparison. This is the default behaviour.
--no-conf, --noconf
keine Konfigurationsdateien lesen, Dies kann nur als erste auf der Befehlszeile angegebene Option benutzt werden.
--debs-dir Verzeichnis
sucht nach .dsc-Dateien in Verzeichnis statt im übergeordneten Verzeichnis des Quellverzeichnisses. Dies sollte entweder ein absoluter Pfad oder relativ zur Wurzel des Quellverzeichnisses sein.
--help, -h
zeigt eine Zusammenfassung der Optionen.
--version, -v
zeigt die Version und Copyright-Informationen.
--quiet, -q
ist still, wenn keine Unterschiede gefunden wurden.
--ignore-space, -w
ignoriert Leerräume in Diffs.

KONFIGURATIONSVARIABLEN

Die beiden Konfigurationsdateien /etc/devscripts.conf und ~/.devscripts werden durch eine Shell eingelesen, um Konfigurationsvariablen zu setzen. Befehlszeilenoptionen können benutzt werden, um Konfigurationsdateieinstellungen außer Kraft zu setzen. Einstellungen aus Umgebungsvariablen werden zu diesem Zweck ignoriert. Die derzeit bekannten Variablen sind:
DEBDIFF_DIRS
Falls dies auf yes gesetzt ist, ist es so, als ob der Befehlszeilenparameter --dirs benutzt würde.
DEBDIFF_CONTROL
Falls dies auf no gesetzt ist, ist es so, als ob der Befehlszeilenparameter --nocontrol benutzt würde. Die Vorgabe ist yes.
DEBDIFF_CONTROLFILES
welche Steuerdateien zu vergleichen sind, entspricht der Befehlszeilenoption --controlfiles. Die Vorgabe ist control.
DEBDIFF_SHOW_MOVED
Falls dies auf yes gesetzt ist, ist es so, als ob der Befehlszeilenparameter --show-moved benutzt würde.
DEBDIFF_WDIFF_OPT
Dieses Option wird an wdiff übergeben; sie sollte entweder -p, -l oder -t sein.
DEBDIFF_SHOW_DIFFSTAT
Falls dies auf yes gesetzt ist, ist es so, als ob der Befehlszeilenparameter --diffstat benutzt würde.
DEBDIFF_WDIFF_SOURCE_CONTROL
Falls dies auf yes gesetzt ist, ist es so, als ob der Befehlszeilenparameter --wdiff-source-control benutzt würde.
DEBDIFF_AUTO_VER_SORT
Falls dies auf yes gesetzt ist, ist es so, als ob der Befehlszeilenparameter --auto-ver-sort benutzt würde.
DEBDIFF_UNPACK_TARBALLS
Falls dies auf no gesetzt ist, ist es so, als ob der Befehlszeilenparameter --no-unpack-tarballs benutzt würde.
DEBDIFF_APPLY_PATCHES
If this is set to yes, then it is the same as the --apply-patches command line parameter being used. The default is no.
DEBRELEASE_DEBS_DIR
Dies gibt das Verzeichnis an, in dem nach den .dsc-Dateien gesucht werden soll. Es ist entweder ein absoluter Pfad oder relativ zur obersten Ebene des Quellverzeichnisbaums. Dies entspricht der Befehlszeilenoption --debs-dir. Diese Direktive kann zum Beispiel benutzt werden, falls Sie immer pbuilder oder svn-buildpackage verwenden, um Ihre Pakete zu bauen. Beachten Sie, dass es außerdem debrelease(1) auf die gleiche Weise beeinflusst, daher der merkwürdige Name der Option.

RÜCKGABEWERTE

Normalerweise wird der Rückgabewert 0 sein, wenn keine Unterschiede gemeldet werden und 1, falls doch. Falls es irgendeinen schwerwiegenden Fehler gibt, wird der Rückgabewert 255 sein.

SIEHE AUCH

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

AUTOR

debdiff wurde ursprünglich als ein Shell-Skript von Yann Dirson <[email protected]> verfasst und neu in Perl mit viel mehr Funktionalitäten durch Julian Gilbey <[email protected]> geschrieben. Die Software kann frei unter den Bestimmungen und Bedingungen der GNU General Public License, Version 2 weitergegeben werden.

ÜBERSETZUNG

Diese Übersetzung wurde mit dem Werkzeug po4a <URL:https://po4a.org/> durch Chris Leick [email protected] im Juli 2012 erstellt und vom deutschen Debian-Übersetzer-Team korrekturgelesen. Bitte melden Sie alle Fehler in der Übersetzung an [email protected] oder als Fehlerbericht an das Paket devscripts. Sie können mit dem folgenden Befehl das englische Original anzeigen »man -L C Abschnitt deutsche_Handbuchseite«.

Recommended readings

Pages related to debdiff you should read also: