BEZEICHNUNG
debcheckout - checkt das Entwicklerdepot eines Debian-Pakets aus
ÜBERSICHT
debcheckout
[ OPTIONEN ]
PAKET [
ZIELVERZEICHNIS ]
debcheckout [ OPTIONEN ]
DEPOT_URL [
ZIELVERZEICHNIS ]
debcheckout --help
BESCHREIBUNG
debcheckout fragt die Informationen über das Versionskontrollsystem ab, das zur Verwaltung eines angegebenen Debian-Pakets verwendet wird (das Argument PAKET ), und checkt dann die neueste (möglicherweise unveröffentlichte) Version des Pakets aus dem Depot aus. Standardmäßig wird das Depot in das PAKET verzeichnis ausgecheckt; dies kann durch Angabe des Arguments ZIELVERZEICHNIS außer Kraft gesetzt werden.
Es wird erwartet, dass die Informationen, wo das Depot verfügbar ist, in den Vcs-*-Feldern im Quellpaketdatensatz stehen. Das Paket vim stellt zum Beispiel solche Informationen mit einem Feld wie Vcs-Hg: http://hg.debian.org/hg/pkg-vim/vim dar. Sie können es mit Grep in der Ausgabe von apt-cache showsrc vim sehen.
Falls mehr als ein Quellpaketdatensatz verfügbar ist, der Vcs-*-Felder enthält, wird debcheckout den Datensatz mit der höchsten Versionsnummer auswählen. Alternativ kann eine bestimmte Version aus den verfügbaren Versionen ausgewählt werden, indem der Paketname als PAKET = VERSION angegeben wird.
Falls Sie bereits die URL eines angegebenen Depots kennen, können Sie debcheckout direkt damit aufrufen, aber Sie werden wahrscheinlich den passenden -t-Schalter übergeben müssen. Das heißt, es werden einige Entscheidungsregeln verwendet, um den Depottyp aus der URL zu ermitteln; falls sie fehlschlagen, möchten Sie möglicherweise den geratenen Typ mittels -t außer Kraft setzen.
Die derzeit unterstützten Versionskontrollsysteme sind: Arch (arch), Bazaar (bzr), CVS (cvs), Darcs (darcs), Git (git), Mercurial (hg) und Subversion (svn).
OPTIONEN
ALLGEMEINE
OPTIONEN
-a, --auth
arbeitet im authentifizierten Modus; dies bedeutet, dass für bekannte URLs (hauptsächlich die auf https://salsa.debian.org bereitgestellten) vor dem Auschecken versucht wird, die URL umzuschreiben, um sicherzustellen, dass in das Depot geschrieben werden kann. Für Git-Depots, die auf Salsa bereitgestellt sind, bedeutet das beispielsweise, dass git [AT] salsa.org:…git anstelle von https://salsa.debian.org/…git benutzt wird.
There are built-in rules for salsa.debian.org and github.com. Other hosts can be configured using DEBCHECKOUT_AUTH_URLS .
-d, --details
gibt nur eine detaillierte Information über das Paketdepot aus, ohne sie auszuchecken; das Ausgabeformat ist eine Liste von Feldern, von denen jedes Feld ein Paar von durch Tabulator getrenntem Feldnamen und Feldwert ist. Die tatsächlichen Felder hängen vom Depottyp ab. Diese Aktion könnte eine Netzwerkverbindung zu einem fernen Depot erfordern.
Siehe auch -p. Diese Option und -p sind wechselseitig exklusiv.
-h, --help
gibt eine detaillierte Hilfenachricht aus und wird beendet.
-p, --print
gibt nur eine Zusammenfassung über die Paketdepotinformation aus, ohne sie auszuchecken; das Ausgabeformat sind zwei durch Tabulator getrennte Felder: Depottyp und Depot-URL. Diese Aktion funktioniert offline, sie benutzt »statische« Informationen, wie sie durch APTs Zwischenspeicher bekannt sind.
Siehe auch -d. Diese Option und -d sind wechselseitig exklusiv.
-P Paket, --package Paket
Wenn ein Depot von einer URL heruntergeladen wird, anstatt zu versuchen, den Paketnamen anhand des Namens der URL zu erraten, wird dieser Paketname benutzt.
-t TYP , --type TYP
setzt den Depottyp außer Kraft (der einige Entscheidungsregeln, basierend auf der URL oder im Fall dass diese Entscheidungsregeln nicht zutreffen, des Rückfallwerts »git«, als Standard übernimmt); sollte einer der derzeit unterstützten Depottypen sein
-u BENUTZERNAME , --user BENUTZERNAME
gibt den Anmeldenamen an, der im authentifizierten Modus (siehe -a) benutzt werden soll. Diese Option impliziert -a: Sie müssen nicht beides angeben.
-f DATEI , --file= DATEI
gibt an, dass die genannte Datei aus dem Depot extrahiert und im Zielverzeichnis abgelegt werden soll; kann mehrfach benutzt werden, um mehrere Dateien zu extrahieren.
--source=never|auto|download-only|always
Einige Pakete legen nur das
Verzeichnis debian in die Versionskontrolle ab.
debcheckout kann die verbleibenden Teile der Quelle
mittels apt-get source abrufen und die Dateien in die
ausgecheckte Version verschieben.
never
verwendet nur das Depot.
auto (Vorgabe)
ruft, falls das Depot nur das Verzeichnis debian enthält, das Quellpaket ab, entpackt es und platziert außerdem die .orig.tar.gz-Datei in das aktuelle Verzeichnis. Tut ansonsten nichts.
download-only
ruft immer die .orig.tar.gz-Datei ab, entpackt sie aber nicht.
always
ruft immer die .orig.tar.gz-Datei ab und entpackt sie, falls das Depot nur das Verzeichnis debian enthält.
VCS-SPEZIFISCHE OPTIONEN
GIT-SPEZIFISCHE
OPTIONEN
--git-track ZWEIGE
gibt eine Liste von fernen Zweigen an, die für die Verfolgung (wie in git branch --track, siehe git-branch(1)) eingerichtet werden, nachdem das ferne Git-Depot geklont wurde. Die Liste sollte als leerzeichengetrennte Liste der Zweignamen angegeben werden.
Als Abkürzung kann die Zeichenkette »*« angegeben werden, damit die Verfolgung aller fernen Zweige verlangt wird.
KONFIGURATIONSVARIABLEN
Die beiden
Konfigurationsdateien /etc/devscripts.conf und
~/.devscripts werden in dieser Reihenfolge von einer
Shell eingelesen, um Konfigurationsvariablen zu setzen.
Befehlszeilenoptionen können benutzt werden, um
Einstellungen in Konfigurationsdateien außer Kraft zu
setzen. Umgebungsvariablen werden zu diesem Zweck ignoriert.
Die derzeit bekannten Variablen sind:
DEBCHECKOUT_AUTH_URLS
Diese Variable sollte eine leerzeichengetrennte Liste regulärer Perl-Ausdrücke und Ersetzungstexte sein, die paarweise vorkommen müssen: REGEXP TEXT REGEXP TEXT … und so fort. Jedes Paar bezeichnet eine Ersetzung, die auf Depot-URLs angewendet wird, falls andere integrierte Mittel von Bau-URLs für den authentifizierten Modus (siehe -a) fehlgeschlagen sind.
Bezüge auf passende Teilzeichenketten in Ersetzungstexten sind, wie in Perl üblich, durch die Mittel von $1, $2, … und so weiter erlaubt.
Diese Einstellung kann benutzt werden, um den Ort des »authentifizierten Modus« für Depots einzuschalten. Die Debian-Depots auf salsa.debian.org werden implizit definiert, wie auch github.com.
Hier ist ein für Konfigurationsdateien geeigneter Beispielcodeschnipsel:
DEBCHECKOUT_AUTH_URLS='
^\w+://(svn\.example\.com)/(.*) svn+ssh://$1/srv/svn/$2
^\w+://(git\.example\.com)/(.*) git+ssh://$1/home/git/$2
'
Beachten Sie, dass weder in Regexps noch in Ersetzungstext Leerräume erlaubt sind. Da Konfigurationsdateien von einer Shell eingelesen werden, ist es wahrscheinlich wünschenswert, einzelne Anführungszeichen um den Wert dieser Variable zu verwenden.
DEBCHECKOUT_SOURCE
Diese Variable bestimmt, in welchen Szenarien die zugehörige orig.tar.gz für ein Paket heruntergeladen wird. Eine Beschreibung der Werte finden Sie unter der Option --source.
DEBCHECKOUT_USER
Diese Variable setzt den Benutzernamen für den authentifizierten Modus. Sie kann mit der Option --user außer Kraft gesetzt werden. Das Setzen dieser Variable bedeutet nicht, dass der authentifizierte Modus verwendet wird, er muss nach wie vor mit --auth aktiviert werden.
SIEHE AUCH
apt-cache(8), Abschnitt 6.2.5 der Debian Entwickler-Referenz (weitere Informationen über Vcs-*-Felder finden Sie unter https://www.debian.org/doc/manuals/developers-reference/best-pkging-practices.de.html#bpp-vcs
AUTOR
debcheckout und diese Handbuchseite wurden von Stefano Zacchiroli <zack [AT] debian.org> geschrieben.