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 update (up) — Aktualisieren Ihrer Arbeitskopie.
svn update [PATH...]
svn update holt Änderungen aus dem
Projektarchiv in Ihre Arbeitskopie. Falls keine Revision
angegeben ist, wird Ihre Arbeitskopie relativ zur Revision
HEAD
aktualisiert. Ansonsten wird Ihre
Arbeitskopie mit der Revision synchronisiert, die bei der
Option --revision
(-r
)
angegeben ist. Während der Synchronisierung entfernt
svn update auch veraltete Sperren
(siehe „Manchmal müssen Sie einfach nur aufräumen“) aus der
Arbeitskopie.
Für jedes aktualisierte Objekt wird eine Zeile ausgegeben, die mit einem Zeichen beginnt, das Auskunft über die vorgenommene Aktion gibt. Die Zeichen haben die folgende Bedeutung:
A
Hinzugefügt
B
Aufgebrochene Sperre (nur in der dritten Spalte)
D
Gelöscht
U
Aktualisiert
C
In Konflikt
G
Zusammengeführt
E
Existierte
Ein Zeichen in der ersten Spalte zeigt eine Aktualisierung für die eigentliche Datei an, während Aktualisierungen für die Eigenschaften einer Datei in der zweiten Zeile angezeigt werden. Informationen zu Sperren werden in der dritten Spalte ausgegeben.
Wie bei den meisten Unterbefehlen können Sie den
Wirkbereich des Umschaltbefehls mit der Option
--depth
auf einen bestimmten Baum
beschränken. Alternativ können Sie die Option
--set-depth
verwenden, um eine neue
Wirktiefe für das Umschaltziel in der Arbeitskopie
festzulegen.
Abholen der Änderungen seit Ihrer letzten Aktualisierung aus dem Projektarchiv:
$ svn update Updating '.': A newdir/toggle.c A newdir/disclose.c A newdir/launch.c D newdir/README Aktualisiert zu Revision 32.
Sie können Ihre Arbeitskopie mit „update“ auch auf eine ältere Revision aktualisieren (Subversion kennt keine „klebrigen“ Dateien wie CVS; siehe Anhang B, Subversion für CVS-Benutzer):
$ svn update -r30 Updating '.': A newdir/README D newdir/toggle.c D newdir/disclose.c D newdir/launch.c U foo.c Aktualisiert zu Revision 30.
Tipp | |
---|---|
Falls Sie eine ältere Revision einer einzelnen Datei untersuchen möchten, verwenden Sie stattdessen besser svn cat – hierdurch wird Ihre Arbeitskopie nicht verändert. |
svn update ist ebenfalls das Mittel
der Wahl bei der Einrichtung von Arbeitskopien mit
teilweisen Checkouts. Wird der Befehl mit der Option
--set-depth
aufgerufen, lässt die
Aktualisierung individuelle Elemente aus oder fügt sie
hinzu, indem die verzeichnete Tiefe aus ihrer Umgebung auf
die von Ihnen angegebene Tiefe angepasst wird (wobei
nötigenfalls Informationen aus dem Projektarchiv abgerufen
wird). Mehr zu teilweise ausgecheckten Verzeichnissen
unter „Verzeichnis-Teilbäume“.
Mit einem einzelnen Aufruf können Sie mehrere Ziele aktualisieren, und Subversion wird nicht nur höflich unversionierte Zielobjekte überspringen, die Sie ihm geben, sondern beinhaltet seit Subversion 1.7 auch eine abschließende Zusammenfassung aller durchgeführten Aktualisierungen:
$ cd my-projects $ svn update * Updating 'calc': U button.c U integer.c Aktualisiert zu Revision 394. Skipped 'tempfile.tmp' Überspringe »tempfile.tmp« Updating 'paint': A palettes.c U brushes.c Aktualisiert zu Revision 394. Updating 'ziptastic': Revision 43. Summary of updates: Updated 'calc' to r394. Updated 'paint' to r60. Updated 'ziptastic' to r43. Konfliktübersicht: Übersprungene Pfade: 1 $