Subversion (SVN) ist eine gute Möglichkeit um kleinere, oder größere Softwareprojekte im Team zu bearbeiten und daran gemeinsam zu entwickeln.
Was Subversion genau ist und wie es funktioniert möchte ich hier nicht näher erläutern. Wen es interessiert, der kann sich bei Wikipedia schlau machen.
Aber jetzt zur Sache. In dem folgenden Artikel werde ich beschreiben, wie man Eclipse zusammen mit dem Plugin Subclipse und einem kostenlosen SVN Hoster verwendet.
Was wird benötigt?
- Einen völlig kostenlosen Account bei XP-Dev.com
- Eclipse selber (im Artikel verwende ich die neue Ganymede Version 3.4.1)
- Das Plugin Subclipse (wird über Eclipse Software Update installiert)
- und zu guter letzt noch ein wenig Source Code (ein kleines HelloWorld reicht für den Anfang vollkommen)
1. Account bei XP-Dev erstellen:
Als aller erstes erstellt man sich einen neuen Account auf XP-Dev (das ganze kann man direkt auf der Startseite erledigen).
Nachdem man sich registriert und eingeloggt hat gelangt man zum Dashboard.
Hier findet man einige Informationen: Zum einen wieviele Respositories und Projekte man angelegt hat zum anderen Bugs und Tasks.
Da es sich um einen neuen Account handelt gibt es folglich noch keine Repositories.
So eins wollen wir nun erstellen:
Dazu oben in der Navigation auf “Subversion” klicken und auf der folgenden Seite dann “Create a new repository”.
Auf der Seite “New Subversion Repository” muss man nun den Namen für sein Repository angeben.
Der Name für das Repository wird folgendermaßen zusammen gesetzt: “accountUsername_repositoryName”
An jeden Namen, den man für seine Repositories wählt, wird der Präfix “accountUsername_” angehängt. Also den Usernamen den man bei der Registrierung gewählt hat.
Für meine eigenen Repositories habe ich mir folgende Namenszusammensetzung überlegt:
Neben dem Präfix der automatisch angehängt wird, verewige ich noch die Programmiersprache und den Projektnamen im Repository-Namen.
Das ganze sieht dann z.B. so aus: “accountUsername_java_HelloWorld”.
Selbstverständlich kann das jeder machen wie er gerne möchte ![]()
Als Alternative zu meiner Erklärung hier, kann man sich auch noch das Tutorial ansehen, welches man hier auf XP-Dev.com findet.
2. Eclipse herunterladen und entpacken:
Nun besorgt man sich Eclipse. Einfach von hier Eclipse Classic 3.4.1 herunterladen. Im folgenden werde ich Eclipse dann für Java Source Codes verwenden.
Selbstverständlich funktioniert das ganze natürlich auch mit allen anderen Eclipse Versionen. Auch mit der für C/C++.
Nach dem herunterladen Eclipse dorthin entpacken wo man es haben möchte, die eclipse.exe starten und Workspace erstellen.
3. Subclipse installieren:
Nachdem unser Eclipse startklar ist, wird nun Subclipse installiert. Alle Informationen zu Subclipse gibt es hier.
Über den Menüpunkt “Help” gelangt man zu den Software Updates:

Im Fenster “Software Updates” wechselt man auf den Tab “Available Software”:

Nun klickt man auf “Add Site…” und fügt folgenden Link ein:
http://subclipse.tigris.org/update_1.4.x
(hier zu finden, dort gibt es auch die Links für ältere Eclipse Versionen)

Nach einem Klick auf OK, wählt man nun die Teile die man für Subclipse benötigt:

Nun klickt man nur noch auf “Install…”, im Install Fenster dann auf “Next >”

Jetzt noch die Lizenzvereinbarungen akzeptieren

Jetzt auf “Finish” und Subclipse wird installiert.
Nach der Installation sollte Eclipse unbedingt neu gestartet werden:

4. Eclipse und SVN nutzen:
Nachdem der Account bei XP-Dev.com angelegt wurde, das erste Repository “accountUsername_java_HelloWorld” erstellt wurde und Subclipse für Eclipse installiert wurde, kann es nun losgehen!
Im folgenden erstelle ich in Eclipse ein kleines neues HelloWorld Projekt (dieser Schritt wird nicht erklärt, sollte eigentlich klar sein):

Nun wird das Projekt mit dem SVN synchronisiert.
Dazu einfach mit rechts auf das Projekt klicken dann “Team” wählen und zuletzt auf “Share Project…” klicken:

Nun wählt man “SVN” und klickt auf “Next >”:

In diesem Schritt wählt man nun die Repository Location und klickt auf “Next >”:
Die benötigte URL sieht folgendermaßen aus:
https://svn.xp-dev.com/svn/accountUsername_java_HelloWorld/
Zu finden ist diese bei jedem Repository, was man angelegt hat.

In diesem Fenster gibt man noch an in welchem Ordner der Source Code landen soll:
Ich habe hier den Ordner “trunk” angegeben (was dies bedeuted etc. kann man bei Wikipedia nachlesen).

Nachdem man den Ordner gewählt hat klickt man wieder auf “Next >”:
In diesem Fenster kann man nun einen Kommentar (Comment) eingeben. Da dies Revision 1 im Repository wird, übernehme ich einfach den “Initial import.” Comment den Eclipse vorschlägt.

Beim ersten Mal wird nun der “accountUsername” und das dazugehörige Password abgefragt:
Wenn man möchte kann man die Checkbox “Save Password:” aktivieren um sich weitere abfragen zu ersparen.

Nachdem das Projekt mit dem Repository synchronisiert und hochgeladen wurde kann man in Eclipse die Perspektive ändern:
Das ist nicht unbedingt nötig, weil man alle SVN Optionen auch aus der normalen Java Perspektive ausführen kann.

So sieht die “Team Synchronizing perspective” aus:
Man kann hier die Projekte und Repositories anwählen und sehen welche Dateien sich darin befinden.

Zurück in der Java Perspektive, ändere ich jetzt den Quelltext ein wenig und mache dann einen Commit:

Jetzt sollte man nur noch einen aussagekräftigen Kommentar angeben, damit andere wissen und verstehen was man geändert hat:

Nachdem man nun den Commit getätigt hat, verändert sich die Projektdarstellung ein wenig und man erhält weitere Informationen:

Das wars eigentlich auch schon. Jetzt kann man starten und gemeinsam an Softwareprojekten entwickeln.
Zum Schluss noch ein paar Tipps:
Damit andere Entwickler sich dem Team anschließen können, benötigen diese natürlich ebenfalls einen Account bei XP-Dev.com.
Man kann dann die Permissions im Repository ändern und anderen den Checkout desselbigen ermöglichen.
Eine weitere nützliche Option ist “Commit Emails”. Hier kann man Email Adressen eintragen, z.B. seine eigene und die der anderen Teammitglieder und nach jedem Commit wird man detailiert darüber informiert was sich geändert hat.
Ach ja nicht zu vergessen: Die Repositories sind alle standardmäßig non-public, d.h. niemand kann darauf zugreifen, oder sie auschecken. Auch diese Option kann man ändern.
Public User besitzen allerdings nur Leserechte.


















