0251 / 590 837 15
info@a-coding-project.de

Einführung in TortoiseSVN

Subversion ist ein Quellcode- und Versionsverwaltungstool. Hierbei wird der Quellcode auf einem Server gespeichert und kann über Subversion Clients abgerufen werden. Ein Subversion Client ist TortoiseSVN. Diesen werde ich euch heute genauer vorstellen.

Im Community Projekte „Eigenes CMS“ gibt es seit vor kurzem einen Subversion Server bei Codeplex. Über diesen werden wir heute Daten abholen, bearbeiten und wieder einchecken.

Installation

Was wir als erstes dafür brauchen ist natürlich TortoiseSVN selbst. Das gibt es hier kostenlos zum Download. Wenn ihr schon dabei seit, könnt ihr euch auch das deutsche Sprachpaket installieren. Wenn ihr das Sprachpaket installiert habt, könnt ihr es über Settings aktivieren. Also, hier der Link:

http://tortoisesvn.net/downloads

Wenn ihr das ganze installiert habt, müsst ihr ggfl. neu starten. Das Programm bindet sich ins Kontextmenü des Windows-Explorer ein, so dass das einchecken usw. ganz schnell geht. So sieht das ganze dann aus:

TortoiseSVN

TortoiseSVN

Code abholen

Das ist erstmal ein riesiges Menü, aber keine Angst, so schwierig ist es nicht. Um nun den Code des CMS oder auch einen anderen zum ersten Mal zu laden müsst ihr erstmal einen neuen Ordner erstellen. Danach macht ihr einen Rechtsklick darauf und wählt SVN Auschecken aus.

Hier gebt ihr dann die URL eures SVN Servers ein. Für das CMS ist das folgende:

http://contentlion.googlecode.com/svn/trunk/

Wenn ihr das zum ersten Mal macht, müsst ihr noch eure Zugangsdaten für Codeplex eingeben.

Habt ihr das alles gemacht und auf OK geklickt wird der Quellcode geladen. Da das CMS schon einige Dateien hat, wird es ein bisschen dauern, bis alle heruntergeladen sind.

Einchecken

Nun könnt ihr die Dateien öffnen und bearbeiten. Wenn die Arbeit erledigt und alles getestet ist, könnt ihr nun euren Quellcode einchecken. Das bedeutet, dass ihr den Quellcode auf dem Server abspeichert, damit andere ihn auch bekommen.

Achtet hierbei darauf, dass ihr vorher persönliche Daten löscht. So solltet ihr zum Beispiel eure (Datenbank)Einstellungen für euch behalten. Wenn ihr die Dateien übertragt, könnt ihr auswählen, welche Dateien übertragen werden. Hier müsst ihr dann einfach diese Dateien rausnehmen.

Dateien ignorieren

Noch besser geht es, wenn ihr die Dateien immer ignoriert. Dafür müsst ihr auf die jeweilige Datei klicken und Löschen und ignorieren auswählen. Die Datei wird dann auf dem Server gelöscht und nicht mehr übertragen. Dies solltet ihr aber nur dann machen, wenn die Datei wirklich für keinen mehr erhalten bleiben soll. Wenn ihr die leeren Einstellungsdateien löscht, ist das nicht so gut. Denn andere Entwickler bekommen dann keine neue Version mehr!

Beim Einchecken kann man ein Kommentar abgeben – Und das solltet ihr auch. Dafür schlage ich folgende Regeln vor:

  1. Kommentare sind in Englisch
  2. Neue Sachen werden mit ADDED: eingeleitet.
  3. Gelöschte Sachen bekommen ein DELETE:
  4. Bugfixes ein BUGFIX:
  5. Und sonstige Änderungen ein CHANGED:

Log anzeigen

So kann man nachher genau sehen, welche Datei wann und warum bearbeitet wurde. Und das sehen wir uns jetzt mal an. Klickt nun mal eine Datei an, welche bereits vor euch einmal bearbeitet wurde und geht auf Zeige Log (Ich habe die /admin/includes/dashboard.php genommen).

Dort bekommt ihr folgendes Fenster:

Tortoisesvn Log

Tortoisesvn Log

Im oberen Teil werden hier die Versionen der Datei angezeigt. Die Revisionsnummer zeigt die Versionnummer des Projektes bzw. in diesem Fall, die von allen Codeplex-Projekten an (deswegen ist sie auch schon so hoch). Daneben ist ein kleines Icon, an dem man sehen kann, ob die Datei hinzugefügt, verändert oder gelöscht wurde. Dann gibt es noch den Autor, das Datum und das Kommentar zur Änderung.

Macht man nun einen Rechtklick auf eine Version, kann man den Quellcode mit dem einer anderen Version vergleichen. Hier kann man grafisch schön sehen, was sich alles geändert hat. Da die Datei komplett überarbeitet wurde, ist hier derzeit alles markiert.

Aktualisieren

Da an dem Projekt nebenbei auch andere Entwickler arbeiten, sollte man natürlich immer auf dem aktuellen Stand sein. Dazu müsst ihr den Hauptordner auswählen und auf SVN Aktualisieren klicken. Nun bekommt ihr die neusten Änderungen. Wenn jetzt eine Datei die ihr bearbeitet habt inzwischenzeit von jemand anderem bearbeitet wurde, bekommt ihr eine Meldung und könnt entscheiden, was passiert.

Ich denke, dass ihr die Grundkenntnisse soweit habt. Alles andere lernt ihr durch Learning by Doing oder durch andere Tutorials. Evtl schreib ich bald nochmal eins für fortgeschrittene Benutzer.

Kommentare

Unheilig schrieb am 15.08.2010:

Kann die Source von https://eigenescmsbeta.svn.codeplex.com/svn mit SVN nicht laden. Login ist immer Falsch obwohl die Zugangsdaten von .codeplex sein sollen. Bitte um Hilfe

Stefan Wienströer schrieb am 16.08.2010:

Hi, wir sind zu Google Code umgezogen. Versuch es mal mit http://contentlion.googlecode.com/svn/trunk/

Kevin schrieb am 04.10.2010:

http://contentlion.googlecode.com/svn/trunk/ kann nicht gefunden werden von SVN. Mit dem Link von Unheilig hats dann geklappt. Vielleicht kann man den link oben ja wieder ändern.

Kevin schrieb am 04.10.2010:

Sorry ich muss mich korrigieren. Es hat jetzt doch geklappt. Weiß aber nicht woran es gelegen hat

Stefan Wienströer schrieb am 05.10.2010:

war vielleicht ein Timeout vom Server