Kleine Helfer

Effiziente Versionskontrolle mit TortoiseSVN

04.10.2012
Von Rainer Reitz
Komplexere Dokumentenprozesse sollten von einem Versionskontrollsystem überwacht werden. TortoiseSVN bietet hierfür ein leicht konfigurierbares Komplettpaket.
Darstellungsoberfläche von TortoiseSVN.
Darstellungsoberfläche von TortoiseSVN.

Ein bekanntes Problem im Büroalltag ist, dass Softwarecode, Textdokumente, Bilder etc. über mehrere Tage geändert werden und mitten in diesem Prozess die Notwendigkeit besteht, eine bestimmte Version nochmals zu sehen oder zu vergleichen, man aber keinen direkten Zugriff mehr auf die Datei hat. Hier greift TortoiseSVN, das ein leicht konfigurierbares Komplettpaket zur Versionskontrolle bietet. Damit lassen sich in erster Linie reine Textdateien wie .txt, .html, .xml und Programmcode versionieren, aber auch binäre Dateien wie Bilder und PDFs.

Zunächst ist das Framework zu installieren: Laden Sie das Programm TortoiseSVN kostenlos herunter. Es integriert sich automatisch in den Windows Explorer (Neustart erforderlich).

Darstellung im Windows-File-Explorer.
Darstellung im Windows-File-Explorer.

Vor der ersten Benutzung sollte man sich das Funktionsprinzip der Software klarmachen: Mit einem so genannten Repository wird eine Art virtuelles Dateisystem angelegt, über das man später auf ältere Versionen seiner Dokumente zugreifen kann. Innerhalb des Repositorys, also der Datenbank mit den älteren Versionen, lässt sich nicht arbeiten. Hierzu gibt es das Arbeitsverzeichnis "Work", von wo aus ein Projekt (Folder/Files) in das Repository eingecheckt beziehungsweise umgekehrt aus der Datenbank in das Work-Verzeichnis wieder ausgecheckt wird.

Erzeugen Sie also zunächst das Repository: Im Beispiel machen wir dies in einem Ordner D:\Repository. Navigieren Sie nach D:\repository, Rechtsklick auf TortoiseSVN >> "Create Repository here" und erzeugen Sie somit die erforderlichen Datenbank-Dateien. Diese existieren ausschließlich für die interne Verwendung von Apache Subversion, dem zugrunde liegenden Versionskontroll-System.

Nun geht es an die "Arbeitskopie/Working Copy". Dazu legen Sie einen leeren Ordner "D:\Work" an, öffnen diesen und klicken im Windows-Kontextmenü die Option "Checkout". Im Checkout-Dialog geben Sie die URL des Repositories ein, zum Beispiel "file:///D:/Repository". Achten Sie hierbei auf den dreifachen Slash nach "file". Klickt man nun auf OK, so wird im Work-Ordner ein verstecktes Verzeichnis ".svn" angelegt, über dessen Inhalt Sie sich keine Gedanken zu machen brauchen.

Damit ist die Vorbereitung für eine erfolgreiche Versionierung abgeschlossen. Um den Work-Folder mit Dateien zu Befüllen, können Sie für einen ersten Test zum Beispiel eine reine Textdatei (.txt) mit Rechtsklick anlegen und dort ein paar Zeilen schreiben. Nach dem Speichern der Datei wählen Sie im Kontextmenü des Work-Ordners den Befehl "SVN Commit", der die Änderungen ins Repository schreibt. Machen Sie dies auf Folder-Level, sparen Sie das explizite "Add to Repository", das eine Datei dem Repository hinzufügt, aber noch nicht bestätigt (commit).

Man sollte sich angewöhnen, beim "Commit" immer eine kurze Beschreibung mitzugeben; wobei man auf die Eingabe des Datums verzichten kann, das wird automatisch übernommen. Nach dem "Commit" erhält die Datei einen grünen Haken.

Öffnen Sie die Datei wieder, nehmen eine kleine Änderung vor und speichern sie wieder, ändert sich das Status-Symbol am Dateinamen in ein rotes Ausrufezeichen und fordert somit visuell zum "Einchecken" auf. Probieren Sie auch die Funktion "Diff with previous version" aus, die Ihnen (zumindest für Text-Dateien) den genauen Unterscheid zur Vorgängerversion anzeigt. Bilder werden nebeneinander im Preview-Mode dargestellt.

Sollten Sie sich eine Arbeitsversion aus dem Repository geladen haben, aber nicht sicher sein, ob es sich um die aktuelle Version des Dokuments handelt, kein Problem: Löschen Sie die Arbeitskopie und starten "SVN Update", sofort ist die letzte Version verfügbar. Schließlich können Sie sich mit "Show log" die Änderungshistorie in Listenform anschauen und das Dokument mit "Revert" auf einen beliebigen Revisionsstand zurücksetzen.

CW-Fazit

Versionskontrolle ist nicht nur ein Thema für die Softwareentwicklung, sondern kann generell für Datensicherheit sorgen. TortoiseSVN ist ein benutzerfreundliches Tool für die Verfolgung von Änderungen an (Text-)Dateien, kommt aber auch mit Binärdateien wie JPEG zurecht. (ph)