mijane Blog

ein paar interessante Sachen gibt es immer

Subversion

Geschrieben von Peter Rother • Freitag, 21. November 2008 • Kategorie: Subversion

Viele haben es schon gehört, doch die wenigstens setzen es ein. Gemeint ist hier eine Versions Kontrolle wie Subversion oder CVS. Für die, die es noch nicht kennen sollten, folgt hier eine kurze Einleitung zum Thema Versions Kontrolle.

Tools wie CVS oder SVN (SVN entspringt CVS) ermöglichen euch, euren Quellcode zu verwalten. Ihr könnt zu jeder Zeit, an jede mögliche Stelle eurer Programmierung zurückspringen. Dies ist z.B. dann von Vorteil, wenn ihr merkt das ihr euch an einer Stelle verheddert habt und nun einen älteren Stand der Datei benötigt. Durch die Versions Kontrolle könnt ihr zu jedem Zeitpunkt der Programmierung zurück springen. Versions Kontrolle wird meistens eingesetzt wenn man mit mehreren Programmierern an einem Projekt arbeitet, man sollte es aber auch einsetzen wenn man alleine an einem Projekt oder sei es nur ein Script arbeitet.

Wie funktioniert die Versions Kontrolle?
Als erstes wird ein Programm zur Versions Kontrolle benötigt. Ich greife hier auf SVN zu, da es einige Features beinhaltet die CVS nicht bietet. Dies wären z.B. die Möglichkeit, Dateien oder Verzeichnisse zu verschieben oder umzubenennen, ohne die Versionsgeschichte zu verlieren.
Die Versionierung erfolgt in einem zentralen Projektarchiv in Form einer einfachen Revisionszählung (bei jedem Commit wird der Revisionszähler +1 erhöht). Bei Änderungen an Inhalten der Dateien werden immer nur die Änderungen in der Datei übermittelt, wodurch diese durch die Revisionskontrolle auch auf ältere Stände zurück gesetzt werden können.

Update:
Bei einem Update werden die bereits hinterlegten Daten aus dem Repository (das ist das Verzeichnis welches die Version pflegt) in das aktuelle Arbeitsverzeichnis geladen. Die Dateien werden hier weiter bearbeitet und nach Fertigstellung wieder in das Repository eingespielt.

Commit:
Dies bedeutet, dass die aktuell bearbeiteten Dateien wieder in das Repository eingespielt werden. Vor einem Commit sollte immer ein Update ausgeführt werden. Hierbei werden dann eventuelle Überschneidungen in den bearbeiteten Dateien angezeigt, die dann von SVN selbst gelöst werden können oder durch ein eingreifen der Person gelöst werden muss, die gerade an den Dateien gearbeitet hat.

Durch die Versions Kontrolle werden zwar keine Fehler vermieden, aber man kann Fehler leichter beheben. Wenn ein Script vorher einmal funktioniert hat und mit einer fehlerhaften Änderung wieder eingespielt wird, kann man ganz einfach zu der zuletzt funktionierenden Version zurück springen.

Dies war jetzt erstmal nur ein kleiner Anriss, was die Versions Kontrolle für euch tun kann. Ich werde in Kürze hierauf noch weiter eingehen und euch als nächstes zeigen, wie man einen Client wie SVN installiert. Hier kann es leider wie bei jedem Programm zu Schwierigkeiten kommen. Aber mit dem bald folgendem Tutorial sollte die Einrichtung leicht von der Hand gehen.

Ein paar Kleinigkeiten noch zum Abschluss:
macht möglichst oft einen Commit,
übertragt immer Dateien die auch zusammen gehören,
bei jedem Commit wird ein Kommentar mit eingetragen - dieser sollte knapp aber beschreibend für die getane Arbeit sein.

Einen SVN Client zum Download gibt es schon einmal hier: tortoise

Tags für diesen Artikel: , ,
Tweet This!Tweet This!