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
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.
- --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.
- --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.
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.
- 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.
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.
debdiff wurde ursprünglich als ein Shell-Skript von
Yann Dirson <dirson@debian.org> verfasst und neu in Perl mit viel mehr
Funktionalitäten durch Julian Gilbey <jdg@debian.org>
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.alioth.debian.org/> durch Chris Leick
c.leick@vollbio.de im Juli 2012 erstellt und vom deutschen
Debian-Übersetzer-Team korrekturgelesen. Bitte melden Sie alle Fehler
in der Übersetzung an debian-l10n-german@lists.debian.org oder
als Fehlerbericht an das Paket devscripts. Sie können mit dem
folgenden Befehl das englische Original anzeigen »man -L C
Abschnitt deutsche_Handbuchseite«.