PTP - Versionsverwaltung mit SVN / Subclipse
Subversion (SVN) ist eine Open-Source-Software zur Versionsverwaltung. Subversion wurde als moderne Ablösung für das mit Schwächen behaftete, in Entwicklerkreisen trotzdem noch sehr verbreitete Programm CVS entwickelt. Deshalb ist es in der Bedienung sehr ähnlich gehalten, zusätzlich zu vielen neuen Features werden fast alle Funktionen von CVS unterstützt.
Subclipse ist ein Plugin für Eclipse, das die Versionsverwaltung mit SVN in Eclipse integriert.
Repository einrichten
Bevor Subclipse genutzt werden kann, muss unter Solaris bzw. Linux ein Repository angelegt werden.
1. Verzeichnis anlegen, z.B. mit dem Namen svn :
mkdir svn
2. Repository anlegen, z.B. mit dem Namen praktikum:
svnadmin create svn/praktikum
Repository-Server in der Informatik
Es gibt grundsätzlich zwei Möglichkeiten, in der Informatik Repositories anzulegen:
- auf dem dedizierten Repository-Server
rzrepository
- auf (Unix-)Fileserver
rzfilesrv1, rzt2000
Die erste Variante ist der empfohlene Weg, da er (authentifiziert) direkt von Außerhalb erreichbar ist und NFS4/CIFS-kompatibel ist. Die zweite Variante ist nur per ssh-Tunnel über die rzssh1
erreichbar, die Daten können aber u.a. im Unix-Home-Verzeichnis des Benutzers liegen.
Die Initialisierung muss auf rzrepository
durch einen Administrator erfolgen. Die Zugriffsrechte für weitere User kann man dann u.a. per Windows-ACLs setzen.
Subclipse
Das Plugin Subclipse ist in Eclipse bereits installiert. Der Zugriff ist nur über eine gesicherte (ssh) Verbindung erlaubt. Geplant ist eine "kerberisierte" Authentifizierung mittels GSSAPI.
Es sollte geprüft werden, ob
- eine (Umgebungs-)Variable
SVN_SSH
auf eine funktionierende ssh-Installation zeigt (z.B. PuTTY oder Tortoise), Bsp.:set SVN_SSH=C:\\programme\\putty\\Plink.exe
- die folgende Einstellung gewählt ist:
Window -> Preferences -> Team -> SVN
unter SVN interface sollte SVN Kit (Pure Java) gewählt werden (bei manchen Eclipse-Versionen).
Um auf das zuvor eingerichtete Reposity zuzugreifen, wählen wir unter dem Menü
File -> New -> Project -> Project -> SVN/Checkout Projects from SVN
-> Create a new repository location
Als URL kann z.B. auf Rechnern innerhalb des Fachbereichs-Datennetzes angegeben werden:
svn+ssh://<username>@rzrepository.informatik.uni-hamburg.de/informatik/ze/rz/repositories/<REPNAME>
oder Zugriff auf eigenes Home-Dir.
svn+ssh://<username>@rzssh1/informatik/home/<username>/<SVN-Dir>
wobei username
durch den tatsächlichen Namen des Accounts und gruppenname
durch eine der Gruppen g1
, g2
... ersetzt werden muss.
In der allgemeinen Form gilt die Syntax
svn+ssh://<username>@<node>/<path>
wobei node
in voll qualifizierter (DNS-)Form oder als IP-Adresse anzugeben ist.
Hinweis: Durch das Setzen geeigneter Gruppenrechte oder ACL-Einträge können mehrere Personen auf das selbe Repository zugreifen.
Tipp: In Eclipse ein neues Projekt mittels checkout
einmalig initiieren, danach nur noch update
und commit
verwenden, synchronize
soll nicht korrekt funktionieren ...
Links
http://de.wikipedia.org/wiki/Subversion_(Software)
Version Control with Subversion (free online-book)
http://subclipse.tigris.org/