Mein Arbeitsplatz verwendet derzeit CVS. Eine Migration nach Gittern ist geplant, aber es könnte noch lange dauern. In der Zwischenzeit habe ich ein Ein-Mann-Projekt und habe mich entschieden, git für meine persönliche Entwicklung zu verwenden. Die Verzweigung, inszenierten Commits, Rebasing etc. war fantastisch! Aber irgendwann muss dieses Projekt und seine Geschichte in CVS importiert werden, damit andere meinen Fortschritt überprüfen können.
Was ist der beste Weg zu ...
Im Moment ist nichts in CVS, wenn es darauf ankommt. (Und wenn ich meinen Weg hätte, wäre nie etwas in CVS, aber ich stecke vorerst fest!) Danke im Voraus!
Obwohl ich kein explizites CVS-Wissen habe, würde ich folgendes Setup vorschlagen.
Work\Project.git
& lt; - git Repo Sync\Project
& lt; - git Klon des Masters
Zweig in ..\Work\Project.git
+ CVS
Versionskontrolle für diesen Ordner. Dann kannst du all deinen Git-Kram in Project.git
machen und wenn du in CVS importieren willst, gehst du zu Sync\Project
und tust einen git pull
, um die Änderungen in deinem Sync-Verzeichnis zu wiederholen (vielleicht musst du das machen) eine vollständige Dir Kasse in CVS?).
Für das umgekehrte Szenario müssen Sie möglicherweise mit der Import-Verzweigung arbeiten, aber ich denke, es wäre möglich, die Änderungen von Ihren Kollegen im Sync-Ordner zu erhalten, aber in einen neuen Zweig zu importieren und diesen mit Ihrem Master zu verbinden Zweig, den Sie aus Ihrem Haupt-Git-Repository gezogen haben. Nach dieser Zusammenführung könntest du git push
die Änderungen zurück zu deinem Work\Project.git
machen.
Im Wesentlichen verwenden Sie Ihr Synchronisierungsrepository genauso, als wären Sie ein anderer Entwickler. Sie könnten sogar das reguläre Repository von Ihrer Synchronisierung abziehen lassen (also eine Pull-Anfrage an sich selbst senden ;-)) oder den git send patch-Mechanismus verwenden, um Ihr Haupt-git-Repository zu aktualisieren.
Beim Importieren des CVS-Änderungssatzes in git gibt es einen git-cvsimport, der Ihnen dabei helfen soll.