Subversion Nutzer fühlen sich die Notwendigkeit, mehrere Spiegel eines Master Subversion-Repository zu erstellen , damit die Mitglieder in verschiedenen geografischen Standorten , Kopien der aktuellen Code schnell zugreifen. Synchronisieren die Repositories auf diese Weise schützt sie auch im Falle eines technischen Defekts auf einem Server. Zur Erleichterung der Synchronisierung stellt Subversion die " svnsync "-Tool. Anleitung
1
Öffnen Sie ein Terminal
2
Erzeugen eines neuen Subversion -Repository , indem Sie: .
Mkdir repository_mirror
svnadmin create repository_mirror
cd respository_mirror
Dies halten die gespiegelte Kopie des Subversion-Repository
3
Geben Sie den folgenden , um die svnserve.conf Konfigurationsdatei bearbeiten . :
nano conf /svnserve.conf
entfernen "#" aus der Zeile:
# password -db = passwd
schließen nano.
4
Geben Sie den folgenden , um die "passwd " -Datei zu bearbeiten :
nano conf /passwd
den folgenden Text unterhalb des " [ Benutzer ] " Zeile einfügen:
svnsync = secret
ändern Geheimnis um das Passwort , die Sie gerne svnsync zu verwenden, wenn es Ihre Repositories synchronisiert würde . Speichern Sie Ihre Arbeit und schließen nano
5
Geben Sie den folgenden ein neues Dokument mit einem Skript, das vom Programm benötigt svnsync bearbeiten : .
Nano Haken /pre -revprop-change
Fügen Sie den folgenden hinein :
# /bin /sh
USER = "$ 3"
if [" $ USER " = " svnsync "] , dann exit 0 ; fi
echo " Nur der Benutzer kann svnsync revprops "> & 2 exit 1
Ihre Arbeit zu speichern , in der Nähe nano und geben Sie den folgenden zu machen ihn zu einem ausführbares Skript :
chmod + x Haken /pre -revprop-change
6
initialisieren sync , indem Sie den folgenden Befehl ein:
svnsync init -Datei :///directory /respository_mirror svn ://SOURCE.COM /source_repos
ersetzen "Verzeichnis" mit dem Verzeichnis, in dem Sie das Repository Spiegel und ersetzen Sie die " SOURCE.COM /source_repos " mit dem Server-Namen . und Repository-Namen für Ihren Spiegel
7
starten Sie den Sync-Prozess :
svnsync sync - username svnsync file :///directory /respository_mirror
erneut , ersetzen Sie den Dateinamen und den Pfad mit denen, die Sie auf Ihrem System verwendet für den Spiegel .