Dieser Text befindet sich gegenwärtig in Bearbeitung, unterliegt ständigen Änderungen und kann dadurch nicht stets akkurat irgendeine freigegebene Version der Software Apache™ Subversion® beschreiben. Das Speichern dieser Seite als Lesezeichen oder andere auf diese Seite zu verweisen, ist keine so gute Idee. Besuchen Sie http://www.svnbook.com/, um stabile Versionen dieses Buchs zu erhalten.
svn status (stat, st) — Ausgabe des Zustands von Dateien und Verzeichnissen der Arbeitskopie.
svn status [PATH...]
Gibt den Zustand von Dateien und Verzeichnissen der
Arbeitskopie aus. Ohne Argumente werden nur lokal
geänderte Objekte ausgegeben (ohne Zugriff auf das
Projektarchiv). Mit --show-updates
(-u
) werden Informationen über die
Arbeitsrevision und in Bezug auf den Server nicht mehr
aktuelle Revisionen angezeigt. Mit
--verbose
(-u
) werden
vollständige Revisions-Informationen für jedes Objekt
ausgegeben. Mit --quiet
(-u
) wird nur eine Zusammenfassung über
lokal geänderte Objekte ausgegeben.
Die ersten sieben Spalten der Ausgabe sind jeweils ein Zeichen breit und beinhalten Informationen über einen unterschiedlichen Aspekt jedes Objektes der Arbeitskopie.
Die erste Spalte gibt Auskunft darüber, ob ein Objekt hinzugefügt, gelöscht oder anderweitig geändert wurde:
' '
Keine Änderungen.
'A'
Objekt ist zum Hinzufügen vorgemerkt.
'D'
Objekt ist zum Löschen vorgemerkt.
'M'
Objekt wurde geändert.
'R'
Objekt wurde in Ihrer Arbeitskopie ersetzt. Das bedeutet, dass die Datei zum Löschen und an deren Stelle eine neue Datei gleichen Namens zum Hinzufügen vorgemerkt wurde.
'C'
Der Inhalt (im Gegensatz zu den Eigenschaften) des Objektes steht in Konflikt mit dem aktualisierten Inhalt aus dem Projektarchiv.
'X'
Objekt ist aufgrund einer Externals-Definition vorhanden.
'I'
Objekt wird ignoriert (d.h., durch die Eigenschaft
svn:ignore
).
'?'
Objekt ist nicht unter Versionskontrolle.
'!'
Objekt wird vermisst (d.h., Sie haben es verschoben oder gelöscht, ohne svn zu verwenden). Das deutet auch darauf hin, dass ein Verzeichnis unvollständig ist (ein Checkout oder eine Aktualisierung wurde unterbrochen).
'~'
Objekt ist als eine bestimmte Objektart versioniert (Datei, Verzeichnis, Link), wurde jedoch durch eine andere Objektart ersetzt.
Die zweite Spalte gibt Auskunft über die Eigenschaften einer Datei oder eines Verzeichnisses:
' '
Keine Änderungen.
'M'
Eigenschaften dieses Objektes wurden geändert.
'C'
Eigenschaften dieses Objektes stehen in Konflikt mit Eigenschafts-Aktualisierungen aus dem Projektarchiv.
Die dritte Spalte wird nur gefüllt, falls das Verzeichnis der Arbeitskopie gesperrt ist (siehe „Manchmal müssen Sie einfach nur aufräumen“):
' '
Objekt ist nicht gesperrt.
'L'
Objekt ist gesperrt.
Die vierte Spalte wird nur gefüllt, falls das Objekt zum Hinzufügen samt Geschichte vorgemerkt ist:
' '
Geschichte soll nicht übertragen werden.
'+'
Geschichte soll übertragen werden.
Die fünfte Spalte wird nur gefüllt, falls das Objekt relativ zu seinem Elternobjekt auf einem anderen Zweig liegt (siehe „Zweige durchlaufen“):
' '
Objekt ist Kind des Elternverzeichnisses.
'S'
Objekt kommt von einem anderen Zweig.
Die sechste Spalte wird mit Informationen zu Sperren gefüllt:
' '
Falls --show-updates
(-u
) verwendet wird, bedeutet das, dass
die Datei nicht gesperrt ist. Falls
--show-updates
(-u
) nicht
verwendet wird, bedeutet es lediglich, dass die
Datei nicht in der Arbeitskopie gesperrt ist.
'K'
Datei ist in dieser Arbeitskopie gesperrt.
'O'
Die Datei ist entweder durch einen anderen
Benutzer oder in einer anderen Arbeitskopie
gesperrt. Das erscheint nur, falls
--show-updates
(-u
) verwendet wird.
'T'
Die Datei war in dieser Arbeitskopie gesperrt
worden, die Sperre wurde jedoch
„gestohlen“ und ist ungültig. Die Datei
ist momentan im Projektarchiv gesperrt. Das erscheint
nur, falls --show-updates
(-u
) verwendet wird.
'B'
Die Datei war in dieser Arbeitskopie gesperrt
worden, die Sperre wurde jedoch
„aufgebrochen“ und ist ungültig. Die
Datei ist nicht mehr gesperrt. Das erscheint nur,
falls --show-updates
(-u
) verwendet
wird.
Die siebte Spalte ist nur dann belegt, falls das Objekt das Opfer eines Baumkonfliktes ist:
' '
Objekt ist nicht das Opfer eines Baumkonfliktes.
'C'
Objekt ist das Opfer eines Baumkonfliktes.
Die achte Spalte ist immer leer.
Aktualitätsinformation erscheint in der neunten Spalte
(nur wenn Sie die Option --show-updates
(-u
) angeben):
' '
Das Objekt in Ihrer Arbeitskopie ist aktuell.
'*'
Auf dem Server ist eine neuere Revision verfügbar.
Die übrigen Felder haben eine variable Breite und
werden durch Leerzeichen begrenzt. Das nächste Feld gibt
die Arbeitsrevision an, falls die Option
--show-updates
(-u
) oder
--verbose
(-v
) angegeben
wird.
Falls die Option --verbose
(-v
) angegeben wird, folgt die letzte
übertragene Revision und der Autor derselben.
Der Pfad der Arbeitskopie ist stets das letzte Feld, so dass es auch Leerzeichen enthalten kann.
Auf diese Weise lässt sich am einfachsten herausfinden, welche Änderungen Sie in der Arbeitskopie gemacht haben:
$ svn status wc M wc/bar.c A + wc/qax.c
Falls Sie herausfinden möchten, welche Dateien Ihrer
Arbeitskopie nicht mehr aktuell sind, geben Sie die Option
--show-updates
(-u
) mit
(es werden keine Änderungen an der
Arbeitskopie vorgenommen). Hier können Sie sehen, dass
sich wc/foo.c
seit unserer letzten
Aktualisierung im Projektarchiv geändert hat:
$ svn status -u wc M 965 wc/bar.c * 965 wc/foo.c A + 965 wc/qax.c Status bezogen auf Revision: 981
Anmerkung | |
---|---|
|
Die umfangreichste Information bekommen Sie wie folgt:
$ svn status -u -v wc M 965 938 sally wc/bar.c * 965 922 harry wc/foo.c A + 965 687 harry wc/qax.c 965 687 harry wc/zig.c Status bezogen auf Revision: 981
Schließlich können Sie die Ausgabe von svn
status mit der Option --xml
im
XML-Format erhalten:
$ svn status --xml wc <?xml version="1.0"?> <status> <target path="wc"> <entry path="qax.c"> <wc-status props="none" item="added" revision="0"> </wc-status> </entry> <entry path="bar.c"> <wc-status props="normal" item="modified" revision="965"> <commit revision="965"> <author>sally</author> <date>2008-05-28T06:35:53.048870Z</date> </commit> </wc-status> </entry> </target> </status>
Für wesentlich mehr Beispiele von svn status, siehe „Verschaffen Sie sich einen Überblick über Ihre Änderungen“.