Subversion Clients für OSX

Ich hatte vor einiger Zeit schon mal überlegt, ob ich etwas zu Subversion und Subversion Clients (SVN-Clients) am Mac schreiben soll. Ich stand auch vor dem Problem einen, für mich und meine Bedürfnisse, geeigneten SVN-Client zu finden.

Nachdem mich nun aber sowohl Thorsten als auch Robert nach einem SVN-Client für den Mac gefragt haben, schreibe ich nun doch mal was auf.

Das Angebot an Clients ist bereits recht ansehnlich geworden. Ich will in meinem kleinen Überblick kurz auf meine Erfahrungen mit folgenden Clients eingehen:

svnX

svnX war der erste Client, den ich ausprobiert habe. Das ist schon eine Weile her und ich erinnere mich, dass ich bei der Installation der Subversion Binaries das eine oder andere Probleme hatte. Läuft alles, ist svnX eine brauchbares GUI für Subversion.

Neben dem Respository-Browser gibt es einen Browser für die lokalen Arbeitsverzeichnisse. Drag and Drop mit dem Finder wird unterstützt. Zur Anzeige von Änderungen wird FileMerge (Mit FileMerge lassen sich verschiedene Revisionen eines Dokumentes miteinander vergleichen. Änderungen werden farblich hervorgehoben. FileMerge ist ein Bestandteil der Apple Developer Tools. ) verwendet. Lediglich svn:properties werden derzeit nicht unterstützt.

Wer sich mit dem Benutzungskonzept anfreunden kann, der findet mit svnX einen brauchbaren OpenSource Client.

SmartSVN

Ein weiter Client, den ich kurz angetestet habe, ist SmartSVN. Dabei handelt es sich um einen in Java implementierten Client, der sowohl auf dem Mac als auch auf Linux oder Windows läuft. Das ist vielleicht ein Vorteil, wenn man gezwungen ist auf verschiedenen Systemen zu arbeiten und nur einen Client verwenden möchte.

Vom Funktionsumfang her ist SmartSVN ein sehr mächtiges Tool. Neben den verschiedenen Browsern (Respository, Transaction) bietet es Assistenten zur Konfliktlösung und zum Einchecken von Dateien. Für die graphische Ausgabe von Revisionen bietet das Programm einen Revisionsgraphen an.

smart_svn.png
Insgesamt macht SmartSVN einen sehr durchdachten, wenn auch etwas altbackenen, Eindruck und lässt sich auch wirklich gut benutzen. Mir hat lediglich die Diff-Anzeige nicht wirklich gefallen. Aber da kann man sicher auch das schon erwähnte FileMerge anbinden.

Smart SVN ist mit einem 90tage Support für $79 erhältlich.

ZigVersion

ZigVersion habe ich selbst (noch) nicht getestet. Robert ist gerade dabei – ich hoffe ich bekomme etwas Feedback.

Versions

Mit diesem Client habe ich neben dem Terminal bisher die meiste Erfahrung. Versions hat seine Beta Phase gerade hinter sich und ist seit kurzem für 39€ zu erwerben. Versions hat mir vor allem wegen seiner schlichten und funktionalen Oberfläche zugesagt.

Wie bei den vorher genannten Clients gibt es auch hier diverse Views auf das Respository bzw. die Arbeitskopie. Mittels Diff können Veränderungen zwischen verschiedenen Versionen eines Dokuments angezeigt werden. Dazu gibt es eine weitere Ansicht, die lokale Veränderungen an Dokumenten in der Arbeitskopie sichtbar macht.

versions.png

Sehr gelungen ist auch die Timeline, die übersichtlich die Änderungen an einem Respository aufzeigt. Dabei werden die Dokumente gezeigt, an denen Änderungen vorgenommen wurden. Klickt man das Dokument an, bekommt man eine Diff-Ansicht mit der vorhergehenden Version im Respository.

Cornerstone

Cornerstone habe ich ungefähr zur gleiche Zeit wie Versions kennengelernt. Zu dem Zeitpunkt konnte man sich damit allerdings noch nicht per svn+ssh auf einem Server einloggen, um auf dem Respository zu arbeiten. Inzwischen funktioniert das sehr gut. Die Benutzeroberfläche ist sehr clean und shiny. Schöne Icons machen es leicht, die Übersicht darüber zu behalten, was geändert wurde. Macht wirklich sehr viel Spaß damit zu arbeiten.

cornerstone1.png

Besonders die Anzeige der Historie einer Datei gefällt mir sehr gut. Dabei wählt man zuerst die Dateien aus, deren Historie man ansehen will und wechselt dann in den History-Browser. Mit gedrückter Command-Taste kann man dann 2 Dateiversionen markieren und bekommt einen Diff-View.

cornerstone2.png

Zusätzliche Informationen, wie svn:properties oder alle weiteren geänderten Dateien in der jeweiligen Revision sowie die eingegebenen Informationen beim einchecken werden ebenfalls mit angezeigt. Es ist aus dieser Ansicht heraus auch möglich, die jeweilige betrachtete Version zu exportieren.

Die Single User Version von Cornerstone kostet $69 und gilt für 2 Computer, was ich sehr angenehm finde.

Terminal

Für mich war das Terminal mein bester Freund in der erste Zeit ohne SVN-Client. Man braucht nicht unbedingt ein GUI, um arbeiten zu können. Nach einigen Aufrufen der man-pages hat man die gängigsten Befehle drauf und weiß sich zu helfen.

Fazit

Den vollen Funktionsumfang der genannten Programme konnte ich nicht ausschöpfen, da ich Subversion ja nur allein für meine Projekte nutze. So habe ich keine größeren Probleme beim beheben von Konflikten lösen müssen, da ich ja immer der einzige war, der an den Dateien gearbeitet hat. Wenn man in einem großen Team an einer Software arbeitet, dann könnten sich dabei die relevanten Merkmale herausbilden, die eine Entscheidung für oder gegen das eine oder andere Programm rechtfertigen.

Für einen einzelnen Entwickler funktionieren alle hier genannten Programme. Es liegt dann an der jeweiligen Vorliebe bzw. am eigenen Workflow für welches Programm man sich entscheidet – mal ganz abgesehen vom Preis.

Wie sind den Eure Erfahrungen mit den genannten Applikationen? Kann jemand noch ein anderes Programm empfehlen, das bisher in meiner kleinen Liste fehlt? Über Feedback würde ich mich sehr freuen.

Update

ich wurde auf zwei weitere Applikationen (Changes, SCPlugin) aufmerksam gemacht. Ich schau mir die dann auch noch an.

Links
Subversion

svnX
SmartSVN
ZigVersion
Cornerstone
Versions

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.