Dieses Tutorial zeigt, wie man ein lokales Subversion Repository erstellt und anschließend Eclipse Projekte mit Subclipse der Versionsverwaltung hinzuzufügt. Die Einrichtung eines Repositores ist so schnell und einfach gemacht, dass eigentlich jeder Entwickler die Vorteile von Subversion nutzen sollte. Das gilt uneingeschränkt auch für kleine Projekte die nicht im Team entwickelt werden.

TortoiseSVN ist ein Subversion Client der uns dazu dienen soll ein neues Repository anzulegen (dies kann alternativ auch mit svnadmin gemacht werden). Da TortoiseSVN sich direkt in den Windows Explorer einklinkt muss Windows nach der Installation erstmal neu gestartet werden. Die Funktionen von TortoiseSVN sind dann über das Kontextmenu (siehe Abbildung rechts) im Explorer im Untermenu “TortoiseSVN” erreichbar.

Die versionierten Daten legt Subversion in Repositories ab, die entweder im Dateisystem oder in einer Berkeley Datenbank erstellt werden. Für ein Dateisystem-basiertes Repository sollten wir zuerst ein neues Verzeichnis anlegen. Im Explorer gehen wir nun in dieses Verzeichnis und drücken die rechte Maustaste für das Kontextmenu. Hier wählen wir TortoiseSVN | Create repository here… aus. Jetzt kann man noch wählen die Art des Repositories wählen, wobei wir die Standardauswahl Native filesystem (FSFS) übernehmen. Damit ist das neue Repository bereits angelegt. Diesen Schritt kann man auch im Terminal mit dem Kommando svnadmin create (Verzeichnis) machen, wenn man TortoiseSVN nicht installieren möchte oder mit einem anderen Betriebsystem arbeitet.

Bei der Gliederung des Repositories ist man zwar grundsätzlich frei, aber es hat sich eingebürgert, unter dem eigentlichen Projektordner die Verzeichnis trunk, branches und tags zu benutzen. Der Trunk, welcher unter CVS noch Head hieß, stellt den aktuellen Entwicklungsstrang dar. Branches sind Verzweigungen für die Pflege unterschiedlicher Versionen und Tags dienen zum markieren bestimmter Versionen. Für den Anfang reicht aber erstmal ein Trunk Verzeichnis.

Wechseln wir jetzt zu Eclipse und dem Plugin Subclipse, welches wir als erstes mit dem Eclipse Update Manager installieren. Für die Mitte Februar 2007 gestartete 1.2.x Linie ist http://subclipse.tigris.org/update_1.2.x die URL für den Update Manager (Help | Software updates | Find and install…). Nachdem diese Updatesite hinzugefügt wurde, das Plugin heruntergeladen und installiert wurde, sollte Eclipse neu gestartet werden.

Jetzt werden wir ein bestehendes Eclipse Projekt in unser neues Repositry ablegen. Dazu öffnen wir das Kontextmenu für den Hauptknoten des Projekts im Package Explorer und wählen hier Team | Share Project… aus. Nachdem wir SVN (und nicht CVS) als Versionssystem ausgewählt haben müssen wir unser neues Repository verfügbar machen. Dazu wählen wir Create new repository location aus und geben auf der folgenden Wizardseite das Verzeichnis des Repositories als URL an.

Im nächsten Schritt geben wir die Position innerhalb des Repositories an. Hier kann man entweder den Vorschlag annehmen, den Projektnamen als Unterverzeichnis im Repository nutzen. Oder, wenn man wie oben empfohlen trunk als zusätzliches Unterverzeichnis nutzen möchte, kann man das gewünschte Unterverzeichnis auch selbst angeben.

Jetzt können wir bereits Finish drücken und kommen dann zum Commit Dialog. Hier können wir noch einen Kommentar eingeben und die Liste der einzucheckenden Dateien überprüfen.

Nach dem Klick auf OK werden die Dateien in das Subversion Repository unter einer initialen Versionsnummer eingecheckt.

Damit ist das Repository und das Versionierung des Eclipse Projekt eingerichtet. Weitere Projekte werden wie das erste mit Share Project… dem Repository hinzugefügt. Die restlichen Schritte sind ebenfalls identisch, nur dass man das bereits eingerichtete Repository auswählen kann.

Damit sind wir schon fast am Ende des Tutorials. Zum Abschluß gibt es noch zwei Tipps für die Benutzung von TortoiseSVN.

Verzeichnisse sollte man immer nur mit Clients derselben SVN Version aus- und einchecken. Sonst kann es passieren, dass ein älterer Client die Metadaten im .svn Verzeichnis des neueren Clients nicht mehr lesen kann. Aus diesem Grund sollte man ein Projektverzeichnis entweder mit Subclipse oder mit TortoiseSVN bearbeitet, aber niemals gemischt. Der zweite Tipp bezieht sich auf den Cache von TortoiseSVN (Prozeß TSVNcache.exe), der CPU und Festplattenressourcen mehr oder weniger stark vereinnahmen kann. Dieser lässt sich aber problemlos in den Einstellungen (Settings im TortoiseSVN Explorer-Kontextmenu) abschalten.

Hier kann man Icon Overlays | Status cache auf None setzen. Das hat lediglich zur Folge, dass man im Windows Explorer den SVN Status nur noch an Verzeichnissen und nicht mehr an den der einzelnen Dateien sieht. Aber gerade wenn man Subclipse als primären SVN Client nutzt dürfte das leicht verschmerzbar sein.

7 Antworten zu “SVN Repository für Eclipse Projekte anlegen”
  1. just thoughts » Blog Archiv » visual svn server sagt:

    [...] Nach 2 min. Installation und ohne großartiger Konfiguration ist das Teil sofort Einsatzbereit. Die Verwaltung von Usern, Gruppen und Repositories funktioniert dank intuitiver grafischer Oberfläche recht einfach. Wie man ein Projekt mittels Subclipse anlegt und sich mit dem SVN Server verbindet erfahrt ihr hier. [...]

  2. Mitch sagt:

    Danke für das Tutorial,
    hat mir wirklich sehr geholfen da ich genau das gesucht hab im www. Auf jeden Fall weiter mit diesen sympathisch geschreibenen Tuts.

    so far
    Mitch

  3. blogger01 sagt:

    Hallo,

    krieg beim Finish nach Angabe des mit TortoiseSVN erstellten Repositories in Eclipse immer Fehler ala

    “Couldn’t open a repository
    svn: Unable to open an ra_local session to URL
    svn: Unable to open repository ‘file:///e:/android/de.ai.driverslog’
    Unsupported FS format
    svn: Expected FS format between ‘1′ and ‘3′; found format ‘4′”

    habe auch festgestellt, dass in der Aktuellen Version des Tortoise nicht mehr nach dem Projekttyp gefragt wird wie im Tutorial beschrieben sondern er legt es sofort an ohne dass der User noch etwas einstellen kann.

    Hat einer ähnliche Erfahrungen gemacht und kennt meinen Fehler?

  4. Markus Junginger sagt:

    Wenn Tortoise neuer ist und ein SVN 1.6 Repository anlegt, kann man mit SVN 1.5 Clients nicht mehr darauf zugreifen. Also entweder die Eclipse Plugins aktualisieren oder ein 1.5er Repository anlegen. Dann sollte es klappen.

  5. jd sagt:

    Hallo,

    dieses Tutorial ist sehr gut geschrieben und ausgearbeitet. Eine Installation nach dieser Anleitung hat hervorragend geklappt, danke dafür!

    Allerdings habe ich auch den “unable to open ra_local session to URL”-Fehler gehabt.
    Ich habe es mit einem downgrading von Tortoise versucht, erst nach Version 1.5.10, dann nach 1.5.7, beides hat leider nicht funktioniert…
    Aber der erste Tip von Markus Junginger scheint der richtige zu sein: das Eclipse Plugin (Subclipse) sollte aktualisiert werden. Mit einem Plugin-Update (in Eclipse) von folgender URL hat es bei mir dann prima funktioniert:
    http://subclipse.tigris.org/update_1.4.x/
    die im tutorial angegebene URL “…/update_1.2.x” ist offenbar zu alt.

    Allerdings läuft bei mir jetzt noch das 1.5.7 Tortoise, weiß nicht ob das zusammenhängt, wollte es jetzt nicht nochmal mit aktueller Version neu machen (never touch a running system)

    viele Grüße und danke

    jd

  6. blogger01 sagt:

    Hab nen Fehler beim Anlegen des SVN Repositories in Eclipse auf dem Client (Notebook):

    svn Handshake failes, received: ‘

    was soll mir das sagen. Repository ist eingerichtet mit Tortoise 1.65 + Subversion 1.65 auf beiden Rechnern.

  7. Stinner sagt:

    Bei mir klappt es super.
    Allerdings musste ich das Subclipse Plugin auf Version 1.6.x updaten.

Hinterlasse einen Kommentar