Dieser Text befindet sich gegenwärtig in Bearbeitung, unterliegt ständigen Änderungen und kann dadurch nicht stets akkurat irgendeine freigegebene Version der Software Apache™ Subversion® beschreiben. Das Speichern dieser Seite als Lesezeichen oder andere auf diese Seite zu verweisen, ist keine so gute Idee. Besuchen Sie http://www.svnbook.com/, um stabile Versionen dieses Buchs zu erhalten.

Erstellen einer Arbeitskopie

In den meisten Fällen werden Sie ein Subversion-Projektarchiv zu nutzen beginnen, indem Sie einen Checkout Ihres Projektes vornehmen. Das Auschecken eines Verzeichnisses aus dem Projektarchivs erzeugt eine Arbeitskopie dieses Verzeichnisses auf Ihrem lokalen Rechner. Falls nicht anderweitig angegeben, enthält diese Kopie die jüngste (d.h. zuletzt erzeugte oder geänderte) im Subversion-Projektarchiv aufgefundene Version des Verzeichnisses und seiner Kinder:

$ svn checkout http://svn.example.com/svn/repo/trunk
A    trunk/README
A    trunk/INSTALL
A    trunk/src/main.c
A    trunk/src/header.h
… 
Ausgecheckt, Revision 8810.
$

Obwohl im vorangehenden Beispiel das Trunk-Verzeichnis ausgecheckt wird, können Sie ebenso leicht irgendein tiefer befindliches Unterverzeichnis aus einem Projektarchiv auschecken, indem Sie den URL dieses Unterverzeichnisses als URL für den Checkout angeben:

$ svn checkout http://svn.example.com/svn/repo/trunk/src
A    src/main.c
A    src/header.h
A    src/lib/helpers.c
… 
Ausgecheckt, Revision 8810.
$

Da Subversion ein Kopieren-Ändern-Zusammenführen-Modell (copy-modify-merge model) statt eines Sperren-Ändern-Entsperren-Modells (lock-modify-unlock) verwendet (siehe „Versionierungsmodelle“), können Sie sofort damit beginnen, Änderungen an den Dateien und Verzeichnissen Ihrer Arbeitskopie vorzunehmen. Ihre Arbeitskopie ist wie jede beliebige andere Ansammlung aus Dateien und Verzeichnissen auf Ihrem System. Sie können die Dateien darin bearbeiten, umbenennen, sogar die komplette Arbeitskopie löschen und vergessen.

[Warnung] Warnung

Obwohl sich Ihre Arbeitskopie wie jede beliebige andere Ansammlung aus Dateien und Verzeichnissen auf Ihrem System verhält, können Sie zwar beliebig Dateien editieren, doch Sie müssen Subversion über alles andere was Sie tun in Kenntnis setzen. Wenn Sie z.B. ein Objekt in der Arbeitskopie kopieren oder verschieben möchten, sollten Sie svn copy oder svn move verwenden statt der Kopier- oder Verschiebebefehle Ihres Betriebssystems. Wir werden darauf später im Kapitel näher eingehen.

Sofern Sie nicht bereit sind, das Hinzufügen einer neuen Datei oder eines neuen Verzeichnisses oder Änderungen an bestehenden Objekten an das Projektarchiv zu übertragen, besteht keine Notwendigkeit, dem Subversion-Server mitzuteilen, dass Sie irgendetwas gemacht haben.

Beachten Sie, dass in den vorangegangenen Beispielen Subversion eine Arbeitskopie in einem Verzeichnis angelegt hat, dessen Name der letzten Komponente des Checkout-URLs entsprach. Das passiert nur aus reiner Anwenderfreundlichkeit, wenn dem Befehl svn checkout lediglich der URL zum Auschecken übergeben wird. Der Kommandozeilen-Client von Subversion bietet Ihnen dennoch zusätzlich die Möglichkeit, den Namen des lokalen Verzeichnisses anzugeben, den Subversion zum Anlegen der Arbeitskopie verwenden soll. Zum Beispiel:

$ svn checkout http://svn.example.com/svn/repo/trunk my-working-copy
A    my-working-copy/README
A    my-working-copy/INSTALL
A    my-working-copy/src/main.c
A    my-working-copy/src/header.h
… 
Ausgecheckt, Revision 8810.
$

Falls das von Ihnen angegebene lokale Verzeichnis noch nicht existiert, ist das in Ordnung: svn checkout legt es für Sie an.