08 July 2009 Subversion, SVN, Visual Studio, Windows Robert Muehsig

imageWer als Versionsverwaltung SVN/Subversion einsetzt, der kann auch unter Windows mit Visual Studio gut arbeiten. Die Tools gibt es kostenlos bzw. auch kostenpflichtig. Erste Anlaufquellen (für die kostenlose Variante) für mich: Tortoise SVN & Ankh SVN. In diesem Blogpost geht es um eine kurze Einführung in SVN & die beiden Tools.

SVN Hosting

Wer sich nicht selber einen Server hinstellen möchte, der kann für sich für eine der vielen Hostinganbieter entscheiden. Wer ein Open Source Projekt plant, kann sich für Codeplex, Google Code, Source Forge etc. den passenden raussuchen. Im Closed Source Bereich kann ich persönlich CVSDude oder Assembla empfehlen.

SVN Server

Wer SVN selber hosten möchte, der sollte am besten ein Blick auf VisualSVN (Server) werfen. Ich denke einfacher wird es unter Windows nicht gehen.

Tortoise SVN - Integration in den Windows Explorer

Tortoise integriert sich direkt in den Windows Explorer. Nach der Installation findet man bei einem Rechtsklick immer folgende Optionen:

image 

Schritt für Schritt

Bitte zuerst Tortoise SVN & Ankh SVN installieren.

Schritt 1: Subversion Repository URL kopieren

Wo auch immer der SVN Server steht, man braucht erstmal die URL vom Repository.

Schritt 2: Ordner erstellen und SVN Checkout

image

Schritt 3: Im Visual Studio Projekt anlegen.

Durch den Checkout Prozess wird ein verstecker Ordner in dem "Checkout Dir" .svn angelegt. Ankh SVN ließt dies aus und zeigt dann bereits ein paar Symbole an. Hier ein Beispiel aus einem aktuellen Projekt:

image

Achtet immer darauf, dass alle Files ein grünes Häckchen davor haben. Falls dies fehlt über Rechtsklick-> "Add" fügt ihr es dem Repository zu.

Schritt 4: Änderungen machen

Wenn Änderungen gemacht werden, ändert sich das Symbol im Visual Studio und über das Context Menü "Commit" kann man dies wieder einchecken.

image

image

Um die letzten Änderungen zu holen reicht ein "Update...". Wenn die Änderungen nicht so gut waren, reicht ein "Revert".

Manchmal eine kleine Zicke!

Vielleicht habe ich auch nur Pech, aber manchmal kann auch was schief laufen. Insbesondere beim Mergen sollte man aufpassen, da im Default beide Varianten in den Code reingepackt werden. Es gibt spezielle Merge Tools um dies nicht händisch zu entfernen. Einfach im Context Menü mal suchen. Ansonsten kann dies beim ersten Mal sehr nervig sein ;)

Eincheck & Files holen geht auch direkt über Tortoise, allerdings ist dies nicht so komfortabel.

Wenn man sich daran gewöhnt, ist es eigentlich recht komfortabel.

VisualSVN

Ein etwas besseres Tool als Ankh SVN soll VisualSVN sein, allerdings kostet dieses Programm etwas, daher hatte ich am Anfang kein Blick drauf geworfen und momentan bin ich mit Ankh recht zufrieden.

Fazit: Visual Studio & SVN - funktioniert mit den passenden Tools sehr gut :)


Written by Robert Muehsig

Software Developer - from Saxony, Germany - working on primedocs.io. Microsoft MVP & Web Geek.
Other Projects: KnowYourStack.com | ExpensiveMeeting | EinKofferVollerReisen.de