Benutzer-Werkzeuge

Webseiten-Werkzeuge


Seitenleiste

Allgemeines

Automatisch

allgemein:ausgewaehlte_svn_befehle

Ausgewählte SVN Befehle

Im folgenden werden einige SVN Befehle näher beschrieben. Diese Auflistung erhebt keinen Anspruch auf vollständigkeit sondern haben sich in bestimmten Situationen im Umgang mit SVN als nützlich erwiesen.

Informationen zu Commits sammeln (svn log)

Es kann sehr hilfreich sein, detaillierte Informationen darüber zu erhalten welche Veränderungen die Kollegen im SVN eingecheckt haben. Hierfür ist der Befehl

svn log

hilfreich.
In seiner Grundform listet er alle Commitbeschreibungen desjenigen Ordners auf, aus dem dieser Befehl aufgerufen wurde. Die Commitbeschreibung enthält neben dem Committext auch die Revisionsnummer, den Comittenden und das Datum des Commits auf. Mit der Option

svn log -r1557:1567

lassen sich auch gezielte commits einzelner Revisionen anzeigen lassen. Werden zu den gewünschten Revisionen keine Commits gefunden kann das daran liegen, dass bei diesen Revisionen keine Änderungen in dem entsprechenden Ordner getätigt wurden. Möchte man dennoch Informationen über diese Revision erhalten muss man denselben Befehl in einem übergeordneten Ordner durchführen. Spätestens der Ordner aperostim_students hat alle durchgeführten Commits gespeichert. Dieser lässt sich auch vom Server aus aufrufen:

svn log https://nas01.control.tu-berlin.de/svn/aperostim_students/HART_Modules/

Die reine Auflistung der Basis informationen kann jedoch manchmal nicht ausreichen. Um nochmehr Informationen zu erhalten kann die Option

svn log -v

genutzt werden. Mit diesem Zusatz werden alle Veränderungen angezeigt, die mit einem entsprechenden commit durchgeführt wurden.

Weitere Informationen zu dem Befehl svn log gibt es hier: http://svnbook.red-bean.com/de/1.5/svn.ref.svn.c.log.html

Einen fehlerhaften Commit rückgängig machen (svn merge)

Hat man versehentlich fehlerhafte eine Änderung comitted gibt es die Möglichkeit diesen Commit und auch alle damit verbundenen Änderungen wieder rückgängig zu machen. Hierfür ist es notwendig zunächst einmal die Aktuelle Revisionsnummer herauszufinden sowie die Revisionsnummer die noch als letztes Korrekt war. Außerdem benätigt man den Link des Betroffenen Ordners auf dem Server. Nun lässt sich der Commit folgendermaßen wieder Rückgängig machen:

svn merge -r [current_version]:[previous_version] [repository_url]

Dieser Befehl kann auch mehrere fehlerhafe Commits gleichzeitig rückgängig machen. Beispielsweise folgendermaßen:

svn merge -r1590:1563 https://nas01.control.tu-berlin.de/svn/aperostim_students/
HART_Modules/as_misc_blocks

Abschließend müssen diese Veränderungen auch wieder commited werden.

svn ci

Weitere Informationen gibt es hier:http://www.fly2mars-media.de/seoblog/server/subversion-wie-einen-falschen-svn-commit-ruckgangig-machen-how-to-revert-a-bad-commit-102027/

Die Kopie einer alten Revision wiederherstellen (svn copy)

Manchmal kann es notwenig sein einen gesamten Ordner aus einer alten Revision wieder herzustellen. Hierfür eignet sich der Befehl:

svn copy

Eine Außführliche Beschreibung des Befehls bedindet sich hier: http://svnbook.red-bean.com/de/1.5/svn.ref.svn.c.copy.html

Um einen Ordner wieder in den Zustand einer bestimmten Revision zu setzen wird die Möglichkeit des Copy Befehls genutzt vom Server auf den Server zu kopieren. Damit das funktioniert muss jedoch erst die aktuelle Version des Ordners vom Server gelöscht werden.

svn rm https://nas01.control.tu-berlin.de/svn/aperostim_students/HART_Modules/
-m"Dieser Ordner muss zunächst gelöscht werden"

Keine Sorge im Zweifelsfall kann dieses Löschen wieder wie im Absatz „Einen fehlerhaften Commit rückgängig machen (svn merge)“ rückgeängig gemacht werden.
Im nächsten Schritt wird der gewünschte Ordner zum Zeitpunkt einer speziellen Revision wieder an den Ort kopiert.

svn copy https://nas01.control.tu-berlin.de/svn/aperostim_students/HART_Modules/@1559
https://nas01.control.tu-berlin.de/svn/aperostim_students/HART_Modules/ 
-m"Um ihn jetzt wieder in einer Alten Version hergestellt zu haben"
allgemein/ausgewaehlte_svn_befehle.txt · Zuletzt geändert: 11/03/2014 11:50 von henckell