Direkt zum Inhalt | Direkt zur Navigation

Benutzerspezifische Werkzeuge
Anmelden
Sektionen
Sie sind hier: Startseite Dienstleistungen Technische Dokumentation Subversion sv-subversion

sv-subversion

erstellt von Veit Schiele zuletzt verändert: 30.10.2009 17:12 © Veit Schiele 2009
sv ist ein Wrapper, der das Verzweigen (branching) und Zusammenführen (merging) in Subversion deutlich vereinfacht.

Dabei macht sv Annahmen über die Namen der Projekterzeichnisse trunk, branches und tags.

Installation

EasyInstall

Die einfachste Art, sv zu installieren ist:

$ easy_install sv

Dies setzt dann jedoch zusätzlich die setuptools voraus.

Dokumentation

sv info

zeigt svn info und Annahmen über das Repository-Layout:

$ sv info
Pfad: .
URL: https://dev.veit-schiele.de/svn/myproject/buildout/trunk
Basis des Projektarchivs: https://dev.veit-schiele.de/svn/myproject
UUID des Projektarchivs: 00ddaf79-0aae-4588-8738-1667106cb39c
Revision: 66
Knotentyp: Verzeichnis
Plan: normal
Letzter Autor: veit
Letzte geänderte Rev: 66
Letztes Änderungsdatum: 2009-08-13 08:36:23 +0200 (Do, 13 Aug 2009)

sv: using repository layout:
    trunk    = https://dev.veit-schiele.de/svn/myproject/buildout/trunk
    branches = https://dev.veit-schiele.de/svn/myproject/buildout/branches
    tags     = https://dev.veit-schiele.de/svn/myproject/buildout/tags
sv create
erstellt einen neuen Zweig basierend auf trunk (default) oder einem anderen Zweig.
sv branches
listet alle verfügbaren Zweige (Branches) auf.
sv switch
gewährleistet, dass Ihre Arbeitskopie sauber ist bevor sie auf einen Zweig umgestellt wird.
sv mergeback

fügt den aktuellen Zweig in trunk (oder einen anderen Zweig) zurück.

Dies funktioniert nur in einer sauberen Arbeitskopie.

Beachten Sie auch, dass das Zusammenführen noch committed werden muss.

sv rebase

erstellt eine neue Version Ihrer Arbeitszweigs basierend auf den letzten Änderungen in trunk wobei diff und log sauber bleiben.

Dabei werden zunächst die Logs von trunk durchsucht und ein neuer Zweig erstellt. Als nächstes werden dann die Änderungen des eigenen Arbeitszweiges zusammengeführt wobei Sie gegebenenfalls auftretende Konflikte manuell lösen müssen.

Eine vollständige Befehlsübersicht erhalten Sie mit sv --help:

$ sv --help
usage:
     branchdiff - display a diff from stop-on-copy to HEAD
       branches - list branches
         create - <branch_name> [parent=parent] create a branch based on parent
      createtag - <tag_name> create a tag from this branch
      difftotag - <tag_name> display a diff of this branch against a tag
    difftotrunk - display a diff of this branch against trunk
           info - display svn info and assumptions about the repository layout
            log - display svn log --stop-on-copy
      mergeback - [destination=parent] merge this branch back into destination
         rebase - [parent=parent] merge this branch into a new copy of parent
         revert - svn revert -R .
         switch - <branch_name> switch to latest rebase for a branch
      switchtag - <tag_name> switch to a tag
            tag - <tag_name> tag this branch
           tags - list tags
             up - (alias for update)
         update - svn update, but switches to latest rebase if necessary

Zum Weiterlesen