SVN erlaubt es, an Texten gemeinsam und gleichzeitig zu arbeiten und dabei entstehende Konflikte weitgehend automatisch zu bereinigen. Dies wird so organisiert, dass die Hauptkopie des Textes in einem Archiv liegt und immer von dort auf den eigenen Rechner geholt werden kann. Auf dem eigenen Rechner besitzt man eine Arbeitskopie, die man regelmäßig mit dem Archiv synchronisieren muss.
Benutzt man mehrere Rechner, so legt man Arbeitskopien auf allen Rechnern an. Am besten geht man hier von der Idee aus, dass man auf jedem Rechner eine unabhängige Person ist und Synchronisation über das Archiv ablaufen lässt. Damit ist man davor sicher, wertvolle Arbeit versehentlich zu überschreiben. Niemals sollten Arbeitsverzeichnisse direkt zwischen Rechnern kopiert werden!
Vor dem Beginn der Arbeit mit SVN muss zunächst auf dem eigenen Rechner ein Arbeitsverzeichnis erzeugt werden. Dies geschieht mit dem Kommando
svn checkout URL
Hier ist URL
eine ganz normale Webadresse,
eingeleitet mit http:// oder https://. Das
Kommando erzeugt ein Unterverzeichnis gleichlautend mit der
letzten Komponente der URL. Dieses Verzeichnis kann nach Wunsch
umbenannt werden.
Bei der Benutzung von SVN gewöhnt man sich am besten den folgenden Arbeitszyklus an:
Bevor man mit dem Editieren beginnt synchronisiert man mit dem Archiv durch das Kommando
svn update
Hat man keine lokalen Änderungen, so bringt dies einfach alle Texte auf den aktuellen Stand des Archivs. Bestehen bereits Änderungen im Arbeitsverzeichnis, so versucht SVN diese automatisch einzubinden. Gelegentlich gelingt dies nicht, das führt dann zu einem Konflikt (s.u.)
Hat man die Arbeit an einem Textbereich abgeschlossen und wendet sich einem anderen Teil zu oder beendet die Arbeit für eine Weile, ist es Zeit, das Archiv auf den Stand des Arbeitsverzeichnisses zu bringen. Handelt es sich um kompilierbare Texte wie C++-Programme oder LaTeX-Quelltexte, so sollte man die Kompilierbarkeit zunächst testen, um die Mitautoren nicht zu verärgern. Hat man dies getan, so empfiehlt sich zunächst
svn status
Dies zeigt an, welche Dateien geändert sind, und auch ob es
neue Dateien gibt, von denen das Archiv nichts weiß. Diese
muss man dann zuerst mit svn add
hinzufügen
(s.u.) Ist man zufreiden, so schickt man die getane Arbeit
mit
svn commit -m 'Statusbericht'
an das Archiv, wobei 'Statusbericht' ein kurzer Kommentar zu
den Änderungen ist, die man gemacht hat. Falls ein anderer
Autor inzwischen dasselbe Kommando aufgerufen hat und sich
das Archiv seit dem letzten svn update
geändert
hatte, so wird man aufgefordert, svn update
erneut durchzuführen. Dadurch stellt das System sicher, dass
nie Änderungen überschrieben werden.
Hinweis: Das Kommando svn commit
ist
'billig' und sollte daher eher zu häufig als zu selten
ausgeführt werden.
Noch zu schreiben