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.
svnsync ist das Werkzeug von Subversion zum entfernten Spiegeln von Projektarchiven. Einfach gesagt, gestattet es Ihnen, die Revisionen eines Projektarchivs in ein anderes zu überspielen.
In allen Spiegelszenarios gibt es zwei Projektarchive: das Quell-Projektarchiv und das Spiegel- (oder „Senken-“) Projektarchiv. Das Quell-Projektarchiv ist das Projektarchiv, aus dem svnsync Revisionen herauszieht. Das Spiegel-Projektarchiv ist das Ziel für diese Revisionen. Jedes dieser Projektarchive kann lokal oder entfernt sein – sie werden immer nur durch ihre URLs adressiert.
Der Prozess svnsync benötigt lediglich Lesezugriff auf das Quell-Projektarchiv; er wird nie versuchen, es zu verändern. Offensichtlich benötigt svnsync jedoch sowohl Lese- als auch Schreibzugriff auf das Spiegel-Projektarchiv.
| ![[Warnung]](images/warning.png)  | Warnung | 
|---|---|
| svnsync ist sehr empfindlich gegenüber Änderungen im Spiegel-Projektarchiv, die nicht im Zuge einer Spiegelung vorgenommen wurden. Um das zu vermeiden, sollte der Prozess svnsync der einzige Prozess sein, der das Spiegel-Projektarchiv verändern darf. | 
Optionen für svnlook sind global, genauso wie bei svn und svnadmin:
svnsync Optionen
--allow-non-empty
              
            Unterbindet die Verifizierung (die svnsync initialize standardmäßig vornimmt), dass das zu initialisierende Projektarchiv keine Historien-Versionen enthält.
--config-dir DIR
            Weist Subversion an, Konfigurationsinformationen aus
            dem angegebenen Verzeichnis zu lesen, statt aus dem
            Standardverzeichnis (.subversion im
            Heimatverzeichnis des Benutzers).
--config-option CONFSPEC
            Für die Dauer des Befehls wird der Wert einer
            Laufzeitkonfigurations-Option gesetzt.
            CONFSPEC ist eine
            Zeichenkette, die den Namensraum, den Namen und den Wert
            der Konfigurations-Option im Format
            FILE:SECTION:OPTION=[VALUE]
            angibt, den Sie zuweisen möchten. In dieser Syntax
            bezeichnen FILE und
            SECTION die
            Laufzeit-Konfigurations-Datei (entweder
            config oder
            servers) bzw. den Abschnitt darin,
            die die Option beinhalten, deren Wert Sie ändern
            möchten. OPTION ist
            selbstverständlich die Option selber und und
            VALUE der Wert (falls
            vorhanden), die Sie der Option zuweisen möchten. Um
            beispielsweise vorübergehend die Kompression im
            HTTP-Protokoll auszuschalten, verwenden Sie
            --config-option=servers:global:http-compression=no.
            Sie können diese Option mehrfach verwenden, um
            gleichzeitig mehrere Optionswerte zugleich zu
            ändern.
--disable-locking
              
            Veranlasst svnsync dazu, seinen eigenen exklusiven Zugangsmechanismus zu umgehen und unter der Annahme zu arbeiten, dass sein exklusiver Zugang auf das gespiegelte Projektarchiv durch anderweitige Maßnahmen gewährleistet ist.
--no-auth-cache
              
            Verhindert die Zwischenspeicherung von Authentisierungsinformationen (z.B. Anwendername und Passwort) in den Laufzeitkonfigurationsverzeichnissen von Subversion.
--non-interactive
              
            Im Fall einer fehlgeschlagenen Zugangsüberprüfung oder mangelnder Berechtigungen, verhindert diese Option die Nachfrage nach Zugangsdaten (z.B. Anwendername oder Passwort). Dies ist nützlich, falls Sie Subversion innerhalb eines automatisierten Skriptes aufrufen und somit ein Abbruch mit Fehlermeldung angebrachter ist als eine Nachfrage.
--quiet (-q)
            Fordert den Client auf, nur die wichtigsten Informationen beim Ausführen einer Operation auszugeben.
--revision (-r) ARG
            Wird von svnsync copy-revprops verwendet, um eine bestimmte Revision oder einen Revisionsbereich anzugeben, auf dem gearbeitet werden soll.
--source-password PASSWD
            Gibt das Passwort für den Subversion-Server an, von dem Sie synchronisieren. Falls es nicht mitgegeben wird oder falsch ist, fragt Subversion bei Bedarf nach.
--source-prop-encoding ARG
              
            Beauftragt svnsync, anzunehmen,
            dass sich übersetzbare Subversion-Revisionseigenschaften
            im Quell-Projektarchiv befinden, die dort in der
            Zeichenkodierung ARG
            gespeichert sind und die beim Kopieren in das gespiegelte
            Projektarchiv in UTF-8 transkodiert werden
            sollen.
--source-username NAME
            Gibt den Anwendernamen für den Subversion-Server an, von dem Sie synchronisieren. Falls es nicht mitgegeben wird oder falsch ist, fragt Subversion bei Bedarf nach.
--steal-lock
              
            Veranlasst svnsync notfalls die Sperre zur Gewährleistung des exklusiven Zugriffs auf das gespiegelte Projektarchiv zu stehlen. (Diese Option sollte nur dann verwendet werden, falls eine Sperre im gespiegelten Projektarchiv vorhanden ist, von der bekannt ist, dass sie nicht mehr verwendet wird – d.h., wenn Sie sich sicher sind, dass keine anderen svnsync-Prozesse auf das Projektarchiv zugreifen.)
--sync-password PASSWD
            Gibt das Passwort für den Subversion-Server an, zu dem Sie synchronisieren. Falls es nicht mitgegeben wird oder falsch ist, fragt Subversion bei Bedarf nach.
--sync-username NAME
            Gibt den Anwendernamen für den Subversion-Server an, zu dem Sie synchronisieren. Falls es nicht mitgegeben wird oder falsch ist, fragt Subversion bei Bedarf nach.
--trust-server-cert
              
            In Verbindung mit --non-interactive
            zum Akzeptieren eines unbekannten
            SSL-Server-Zertifikates ohne Nachfrage.