2 - freiesMagazin
2 - freiesMagazin
2 - freiesMagazin
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Versionsverwaltung mit Subversion von Bernd Essl<br />
Bei der Softwareentwicklung hilft eine<br />
Versionsverwaltung, den gemeinsamen<br />
Zugriff auf Quellcode zu kontrollieren<br />
und insgesamt Ordnung zu halten.<br />
Für größere, gemeinsame Projekte ist<br />
es unumgänglich, Änderungen nachvollziehen<br />
zu können. Eines der bekannteren Systeme<br />
ist Subversion. Kurz gefasst bietet es<br />
folgende Funktionen:<br />
• Änderungen erfassen und ablegen, genannt<br />
commit<br />
• Zugriff auf sämtliche abgelegte Versionen,<br />
genannt checkout (auschecken)<br />
Dabei wird zum Projektstart erst einmal ein<br />
Projektarchiv angelegt, genannt Repository.<br />
Zum Arbeiten wird mittels checkout eine<br />
Kopie erstellt. Diese wird zu Beginn jeder Arbeitssession<br />
mittels update abgeglichen.<br />
Subversion hilft nicht zwingend nur bei der<br />
Programmierung, sondern kann für Dokumente<br />
aller Art verwendet werden. So setzen es<br />
einige Systemadministratoren beispielsweise<br />
ein, um schnell festzustellen, was sich in Konfigurationsdateien<br />
geändert hat. Auch bei der<br />
Erstellung längerer Texte (Dokumentationen,<br />
Uni-Arbeiten, . . . ) kann es eine wertvolle Unterstützung<br />
sein.<br />
In der Folge wird beispielhaft das Anlegen des<br />
Projektarchivs demonstriert und es werden<br />
verschiedene svn-Kommandos vorgestellt. Die<br />
Installation des Pakets subversion über die<br />
Paketverwaltung ist denkbar einfach.<br />
Zuerst wird ein Projektarchiv mit dem Namen<br />
repos im Homeverzeichnis erstellt:<br />
$ svnadmin create ˜/repos<br />
Nun kann man sich Grundstruktur des Projektarchives<br />
anschauen:<br />
$ ls repos<br />
conf dav db format hooks <br />
locks README.txt<br />
Als nächstes checkt man die Arbeitskopie in<br />
den Unterordner work, der dabei automatisch<br />
erstellt wird, aus und wechselt dorthin. Der<br />
BENUTZERNAME muss dabei natürlich korrekt<br />
angepasst werden.<br />
$ svn checkout<br />
file:///home/BENUTZERNAME <br />
/repos/ /home/BENUTZERNAME/work<br />
$ cd work<br />
Als Arbeitskopie können Dateien erstellt,<br />
verändert und gelöscht werden. Zuerst eine<br />
Datei mit dem aktuellen Datum anlegen:<br />
16<br />
$ date > test.txt<br />
Um zu überprüfen, was sich in der Arbeitskopie<br />
geändert hat, kann man sich den Status<br />
anzeigen lassen:<br />
$ svn status<br />
? test.txt<br />
Das ” ?“ am Anfang der Zeile zeigt an, dass<br />
die Datei im Projektarchiv nicht existiert. Um<br />
test.txt ins Archiv aufzunehmen, wird svn<br />
add verwendet:<br />
$ svn add test.txt<br />
A test.txt<br />
Das ” A“ informiert darüber, dass test.txt<br />
beim nächsten commit hinzugefügt wird.<br />
Als nächstes muss die Datei ins Projektarchiv<br />
abgelegt werden. Das geschieht mit svn<br />
commit. Der Schalter -m fügt einen Beschreibungstext<br />
hinzu:<br />
$ svn commit -m ¨erster test¨<br />
Adding test.txt<br />
Transmitting file data .<br />
Committed revision 1.<br />
Zu diesem Zeitpunkt verrät svn status,<br />
dass Arbeitskopie und Projektarchiv identisch<br />
sind, indem es keine Ausgabe anzeigt.