Entwicklerhandbuch/SVN-Anleitung

Aus Delixs
Zur Navigation springen Zur Suche springen

Diese Seite ist momentan eine Baustelle im Zustand: 2

Wird bearbeitet von: ThorstenStrusch
Hilfe zum Bearbeitungsstatus: Hilfe:Status eines Artikels


SVN-Arbeitsumgebung einrichten

TortoiseSVN integriert sich als Erweiterung der normalen Kontextmenüs in den Windows-Explorer.

Für die Verwendung von SVN unter Linux sind die nötigen Konsolenkommandos angegeben.


Download und Installation

Die benötigten Setup-Dateien zu TortoiseSVN finden sich hier:

 http://tortoisesvn.net/downloads (Hauptprogramm - Languagepacks - Spellchecker) 

Die heruntergeladenen Programmpakete sind als MSI-Dateien ausgeführt und lassen sich einfach installieren, indem man sie im Explorer einmal mit der rechten Maustaste anklickt und "Installieren" wählt.

Dieses Vidoetutorial hilft Ihnen bei der Installation: Tortoise herunterladen und installieren

Nach den beiden erfolgreichen Installationen von Hauptprogramm und deutschem Sprachpaket ist zwangsweise ein Neustart nötig. Danach sollten in den Kontextmenüs des Explorers einige neue Erweiterungen auftauchen.


SVN-Menü
Abbildung: SVN-Kontextmenü


Hinweis für Linuxnutzer: Da die meisten aktuellen Linux-Distributionen bereits ein vorbereitetes SVN-Paket mitbringen, kann an dieser Stelle keine genau Installationsanweisung gegeben werden. Unter Debian sollte sich das Paket mittels:

 aptitude install subversion

installieren lassen, unter SUSE-Distribtionen sollte YaST behilflich sein.


Erzeugen einer lokalen Arbeitskopie

Auch hier können Sie sich ein Videotutorial ansehen: tortoise konfigurieren und Ordner einchecken

Um an den Daten aus dem zentralen Repositoy arbeiten zu können, muss zunächst eine lokale Kopie des aktuellen Standes auf dem eigenen Rechner erzeugt werden. Dieser Vorgang wird "Checkout" genannt. Dabei geht man so vor, dass man sich zunächst ein leeres Verzeichnis anlegt, dort "rechtsklickt" und "SVN Auschecken" aus dem Menü wählt. Es erscheint ein Dialog, in dem man die URL des Repositorys und das lokale Arbeitsverzeichnis einträgt. Die URL ist im Falle der delixs-Entwicklung http://dev.delixs.de/wsvn/delixs. Das Checkout-Directory entspricht dem zuvor angelegten Arbeitsverzeichnis.


SVN-Checkout
Abbildung: SVN-Checkout


Solange man mit der aktuellsten Version aus dem Repository arbeiten will, lässt man die Einstellung unter "Revision" auf "Head Revision" stehen. Alternativ könnte man auch durch Angabe einer Revisionsnummer einen älteren Stand der Dokumentation auschecken.

Nach dem Auschecken finden sich die Dateien mit dem aktuellen Versionsstand im Arbeitsverzeichnis. Zusätzlich wurden zu den eigentlichen Projektdateien Ordner mit dem Namen ".svn" angelegt, die interne Informationen über die aktuelle Arbeitskopie enthalten. Diese dürfen keinesfalls gelöscht oder von Hand verändert werden.

Verzeichnisse, die unter der Versionsverwaltung von SVN stehen werden im Windows Explorer mit einem veränderten Icon im Verzeichnisbaum markiert:


SVN-Browser
Abbildung: SVN-Browser


Außerdem ist das Kontextmenü des Explorers innerhalb dieser Verzeichnisse um weitere SVN-Funktionen erweitert.


SVN-Menü
Abbildung: SVN-Kontextmenü


Hinweis für Linuxnutzer: Die Linux-Benutzer sollten an dieser Stelle in ein leeres Arbeitsverzeichnis wechseln und den Befehl eingeben:


  svn co http://dev.delixs.de/wsvn/delixs/installer

Die aktuelle Version wird nun aus dem Repository heruntergeladen.


Arbeiten mit der lokalen Arbeitskopie

Update

Sollte der Checkout zeitlich schon einige Zeit zurückliegen, so empfiehlt es sich dringend die lokale Arbeitskopie zunächst auf einen aktuellen Stand zu bringen. Dieser Vorgang, bei dem Änderungen aus dem zentralen Repository in die lokale Kopie übertragen werden, wird "Update" genannt und kann einfach mittels Rechtsklick auf das Arbeitsverzeichnis und die Auswahl von "SVN Update" erledigt werden. Der eigentlichen Arbeit steht nun nichts mehr im Wege. Vorhandene Dateien können einfach mit einem Editor oder einem passenden Programm bearbeitet werden. Die Arbeit unterscheidet sich hier nicht von der Arbeit mit normalen, lokalen Dateien!


  • Linux-Benutzer haben es bei der Update-Funktion sehr leicht. Es reicht ein svn update auf der Kommandozeile wenn man sich im Verzeichnis der Arbeitskopie befindet.


Commit

Sind alle Änderungen erfolgt wird als nächstes ein sog. "Commit" durchgeführt. Dabei werden die lokal durchgeführten Veränderungen an das zentrale Repository übertragen und erzeugen dort eine neue Revisionsnummer. Damit stehen die Änderungen ab sofort allen anderen Teilnehmern zur Verfügung. Praktisch erfolgt der Commit wieder durch Rechtsklick auf das Arbeitsverzeichnis im Explorer und dort den Menüpunkt "SVN Übertragen".


SVN-Commit
Abbildung: SVN-Commit


In dem Commit-Dialog sollte nun als erstes eine möglichst aussagekräftige Kurzbeschreibung der vorgenommenen Änderungen eingetragen werden. Weiter bietet der Dialog eine Übersicht zu den geänderten Dateien und der Art der Änderungen (in dem Bild wurde z.B testweise eine Textdatei hinzugefügt).

  • Unter Linux wird alles wieder mit einem einzigen Befehl erledigt: svn commit -m "<hier kommt die Beschreibung der Änderung rein>". Das funktioniert natürlich ebenfalls nur, wenn man sich gerade im richtigen Verzeichnis befindet.


Hinzufügen und Löschen von Dateien aus dem Projekt

Wichtig zu merken ist, dass sich neue Dateien nicht durch einfaches Kopieren in die Versionsverwaltung des Projekts übernehmen lassen. Erzeuge ich in meiner Arbeitskopie eine neue Datei, so bleibt diese solange eine einfache lokale Datei, bis ich sie explizit in das Projekt aufnehmen. Das erfolgt mit Hilfe des Befehls "+Hinzufügen" aus dem Untermenü "TotoiseSVN", das erscheint, wenn man einen Rechtsklick auf die hinzuzufügende Datei macht. gemacht werden. Diese Änderungen werden vorgemerkt und beim nächsten Commit wieder an das Repository übertragen.

Analog müssen Lösch- und Umbennenungsvorgänge zusätzlich durch Aufruf von "Löschen" oder "Ümbenennen" kenntlich gemacht werden. Ein alleiniges Umbennen oder Löschen der Datei würde beim nächsten Update dazu führen, dass die alte Datei wieder auftaucht.


  • Die zugehörigen Befehle unter Linux lauten
svn add <Dateiname>
svn delete <Dateiname>
svn move <Quelle> <Ziel>
  • weitere Paramter für die Nutzung unter Linux offenbart das Kommand svn --help


Weblinks



zurück | Hauptseite

Alexander Dubielczyk, Thorsten Strusch 2005-2009