Ein Projektarchiv von CVS nach Subversion überführen

Die vielleicht wichtigste Methode, CVS-Benutzer mit Subversion vertraut zu machen, ist es, sie ihre Arbeit an den Projekten mit dem neuen System fortführen zu lassen. Obwohl sich das mit einem flachen Import eines exportierten CVS-Projektarchivs in ein Subversion-Projektarchiv bewerkstelligen lässt, umfasst die gründlichere Lösung nicht nur die Übertragung einer Momentaufnahme des aktuellen Datenbestands, sondern der gesamten Historie, die sich dahinter verbirgt. Dabei gilt es, ein äußerst schwieriges Problem zu lösen: neben anderen Komplikationen bedingt dies, dass Änderungsmengen aufgrund der fehlenden Atomizität hergeleitet werden und die vollständig orthogonalen Verzweigungsstrategien übertragen werden müssen. Trotzdem behaupten eine handvoll Werkzeuge, dass sie zumindest teilweise die Fähigkeit mitbringen, bestehende CVS- in Subversion-Projektarchivs umwandeln zu können.

Das meistverbreitete (und ausgereifteste) Werkzeug zur Umwandlung ist cvs2svn (http://cvs2svn.tigris.org/), ein Python-Programm, das ursprünglich von Mitgliedern der Subversion-Entwicklergemeinde erstellt wurde. Dieses Werkzeug soll genau einmal aufgerufen werden: es durchsucht mehrfach Ihr CVS-Projektarchiv und versucht so gut es eben geht, Übergaben, Zweige und Tags herzuleiten. Wenn es fertig ist, liegt als Ergebnis entweder ein Subversion-Projektarchiv oder eine portable Subversion-Auszugsdatei vor, die die Historie Ihres Codes repräsentiert. Auf der Web-Präsenz finden Sie detaillierte Anleitungen und Warnungen.