Migrieren von project aus RCS zu git?

Ich habe eine Der 20-jährige Projekt, dass ich möchte, um die Migration von RCS-git, ohne dabei die Geschichte. Alle web-Seiten, die suggerieren, dass der Eine Wahre Weg ist durch CVS. Aber nach einer Stunde Googeln und versuchen, verschiedene Scripte, ich habe noch etwas zu finden, dass erfolgreich wandelt meine RCS Projektbaum im CVS. Ich hoffe, dass die guten Leute bei Stackoverflow wird wissen, was tatsächlich funktioniert, im Gegensatz zu dem, was behauptet, um zu arbeiten und nicht.

(Ich suchte Stackoverflow unter Verwendung der nativen, ALSO der Suche und der Google-Suche, aber wenn es eine hilfreiche Antwort in der Datenbank, habe ich es verpasst.)

UPDATE: Die rcs-fast-export tool auf http://git.oblomov.eu/rcs-fast-export repariert wurde am 14 April 2009, und diese version scheint für mich arbeiten. Dieses tool konvertiert gerade an git ist, die keine dazwischen CVS. Vielen Dank Giuseppe und Jakub!!!


Dinge, die nicht funktioniert hat, dass ich mich noch erinnern:

  • Den rcs-to-cvs Skript, dass die Schiffe in der contrib Verzeichnis des CVS-Quellen

  • Den rcs-fast-export tool auf http://git.oblomov.eu/rcs-fast-export in Versionen vor 13 April 2010

  • Den rcs2cvs Skript gefunden in einem Dokument namens "CVS-RCS - HOW-TO-Dokument für Linux"

  • Wenn Sie gefunden haben, viele Wege, die nicht funktionieren, und Sie Fragen nach Möglichkeiten, das zu tun, ich denke, es wäre klug, Liste der Arten, die nicht arbeiten, damit niemand verschwendet mehr Zeit 🙂
  • Als seitliche Anmerkung, manche Leute sagen, dass der beste Weg aus dem CVS (wenn man Sie einmal) git ist via subversion. stackoverflow.com/questions/881158/...
  • Warum genau haben Sie zu halten die Geschichte?
  • Warum jemand, halten Geschichte? Ich bin ein Wissenschaftler und Ingenieur, und ich studiere software. Ein Artefakt mit 20 Jahren lohnt sich der Geschichte stellt unersetzlichen Daten!
  • Nach der Lektüre dieses post, ich war in der Lage, zu konvertieren, ein RCS-repository (mit einer Datei) zu git. Für Neulinge, die folgenden Unix-Befehle könnte Ihnen helfen, begonnen zu erhalten. Stellen Sie sicher, dass ruby und git installiert sind. Gehen Sie zu dem Verzeichnis mit Ihrer Komma-v-Datei (heißt so etwas wie file.txt v). Type "git --bare init" so erstellen Sie eine bare-git-repository. Geben Sie "ruby your/path/to/rcs-schnell-export.rb | git fast-import".
  • Wenn ich konvertiert haben, RCS-repositories, CVS, die ich gerade erstellt eine CVS-repository und kopiert die RCS *,v Dateien in es. Ein CVS-repository ist eigentlich ein Verzeichnisbaum mit einer Menge von RCS-Stil *,v Dateien in es. Die CVSROOT Verzeichnis ist das Besondere, sondern dass die erstellt wird, wenn das CVS-repository angelegt wird.

Schreibe einen Kommentar