Hin und wieder steht ja doch mal ein Serverumzug auf potentere Hardware an. Natürlich möchte in einem solchen Fall auch der Subversion Server neu eingerichtet und alle Repositories ebenfalls mitgenommen werden. Die nötigen Befehle, um den Daten-Umzug durchzuführen sind kurz und einfach.
Daten sicher: Hierzu logged man sich auf dem alten Rechner via SSH ein und legt zunächst ein Datendump des Repositories an. Mit dem svnadmin dump
Befehl werden alle Revisionen zu einer einzigen Datei reduziert.. Die Option -r 1:HEAD
konkretisiert noch einmal genau, welche Teile des Revisionsbaums ich exportieren möchte (in diesem Fall alle )
svnadmin dump /pfad/zum/repository -r 1:HEAD > /pfad/zum/svndumpfile
Neues SVN Repository vorbereiten: Nach der Sicherung der Daten, kann der neue Server vorbereitet werden. Dazu logged man sich auch dort via SSH ein, kopiert sich das Backup File vom alten Server auf den neuen (z.B. via SCP) und erstellt anschließend ein neues, leeres Repository mittels svnadmin create
.
scp <user>:<ip-alter-server>:/pfad/zum/svndumpfile . mkdir /pfad/zum/repository svnadmin create /pfad/zum/repository
Backup importieren: Nachdem das SVN Dumpfile übertragen und ein neues, leeres Repository angelegt wurde, importiert man die zuvor exportierten Daten. Die Option --ignore-uuid
ignoriert beim Import der Daten bereits vorhandene UUIDs aus dem Backup. Es klappte bei mir zwar auch ohne diese Option, wird wohl aber schon seinen Sinn haben. (s. SVN Manual)
svnadmin --ignore-uuid load /pfad/zum/repository < /pfad/zum/svndumpfile
Fertig 🙂