cvs2svn.

ein Werkzeug zum Migrieren eines CVS-Repositorys an Subversion oder Git
Jetzt downloaden

cvs2svn. Ranking & Zusammenfassung

Anzeige

  • Rating:
  • Lizenz:
  • Freeware
  • Preis:
  • FREE
  • Name des Herausgebers:
  • The cvs2svn Team
  • Website des Verlags:
  • http://cvs2svn.tigris.org/
  • Betriebssysteme:
  • Mac OS X
  • Dateigröße:
  • 468 KB

cvs2svn. Stichworte


cvs2svn. Beschreibung

Ein Tool für die Migration einer CVS-Repository zu Subversion oder git cvs2svn wichtigsten Design-Ziele sind zu 100% Datenerhalt und Robustheit. cvs2svn kann nur konvertieren über all CVS-Repository Sie jemals gesehen haben, einschließlich gcc, FreeBSD, Mozilla, KDE, GNOME.cvs2svn folgert, was in der Geschichte Ihrer CVS-Repository passiert und Replikate, dass die Geschichte so genau wie möglich in dem Ziel SCM. Alle Änderungen, Zweige, Tags, Log-Meldungen, Autorennamen und begehen Daten umgewandelt werden. cvs2svn folgert, was CVS Änderungen wurden in der gleichen Zeit gemacht, und gibt diese Änderungen zusammengefasst als Differenzmengen im Ziel SCM. cvs2svn befasst sich auch mit vielen CVS Macken und ist in hohem Maße konfigurierbar. Hier sind einige der wichtigsten Features von cvs2svn: Keine Informationen verloren: · Cvs2svn arbeitet hart, keine Informationen aus Ihrer CVS-Repository zu verlieren (es sei denn, Sie speziell für eine teilweise Umwandlung fragen mit --trunk-only oder --exclude). Change: · CVS Aufzeichnungen Änderungen Datei-für-Datei und nicht im Auge behalten, was Dateien zur gleichen Zeit geändert wurden. cvs2svn verwendet, um Informationen wie die Dateiänderungszeiten, Protokollmeldungen und Abhängigkeitsinformationen die ursprünglichen Änderungsmengen abzuleiten. cvs2svn ermöglicht Change, die mehrere Filialen und / oder mehrere Projekte betreffen (wie von CVS erlaubt ist), oder es kann so konfiguriert werden, Differenzmengen aufgeteilt in einzelne Commits (--no-Cross-Zweig-Commits, siehe auch Optionen-Datei). Multi Umwandlungen: · Cvs2svn kann eine CVS-Repository konvertieren, die mehrere Projekte in eine einzige Subversion-Repository mit der herkömmlichen Multiverzeichnisstruktur enthält. Siehe FAQ für weitere Informationen. Zweig vs. tag: · CVS erlaubt es das gleiche Symbol Name manchmal als ein Zweig verwendet werden, manchmal als Tag. cvs2svn hat Optionen und Heuristiken, um zu entscheiden, wie solche "gemischte" Symbole zu konvertieren (--symbol-Hinweise, --force-Zweig, --force-tag, --symbol-Standard). Branche / Tag Ausschluss: · Cvs2svn ermöglicht es dem Benutzer Zweige zu spezifizieren und / oder Tags, die aus der Umwandlung ganz ausgeschlossen werden sollten (--symbol-Hinweise, --exclude). Es überprüft, dass die Ausschlüsse selbst konsistent sind (zum Beispiel, ist es nicht ein Zweig ermöglichen, wenn ein Zweig ausgeschlossen werden, dass Sprossen aus nicht ausgeschlossen sind). Branche / Tag Umbenennung: · Cvs2svn können Zweige und Tags bei der Konvertierung umbenennen regulären Ausdrücken Mustern (--symbol-Transformation). Die Wahl SVN Pfade für branches / tags: · Sie können wählen, was SVN Wege wie die trunk / branches / tags Verzeichnisse verwendet werden (--trunk, --branches, --tags), oder stellen Sie beliebige Pfade für bestimmte CVS branches / tags (--symbol-Hinweise). Zum Beispiel möchten Sie vielleicht einige Tags in das Projekt / tags Verzeichnis speichern, aber andere zu Projekt / releases. Zweig und Tag-Eltern: · In vielen Fällen ist die CVS Geschichte mehrdeutig zu welcher Branche als Mutter eines anderen Zweig oder ein Tag serviert. cvs2svn bestimmt die plausibelste Eltern für Symbole mit Querdateiinformationen. Sie können mit Hilfe der --symbol-Hinweise Option cvs2svn die Entscheidungen auf einer Fall-zu-Fall-Basis außer Kraft setzen. Zweig und Tag-Erstellungszeiten: · CVS aufzeichnen nicht, wenn Zweige und Tags erstellt werden. cvs2svn schafft Zweige und Tags zu einer vernünftigen Zeit, im Einklang mit den Dateirevisionen, die markiert wurden, und versucht jeden innerhalb einer einzigen Subversion, wenn möglich begehen zu erstellen. Mime-Typ: · CVS nicht Datensatz Dateien MIME-Typen. cvs2svn bietet mehrere Mechanismen für die Wahl eines angemessenen Datei Mime-Typs (--mime-Typen, --auto-props). Binary vs. Text: · Viele CVS-Benutzer aufzeichnen nicht systematisch, welche Dateien binär sind und welche Text. (Dies ist vor allem dann wichtig, wenn das Repository auf Nicht-Unix-Systemen verwendet wird.) Cvs2svn eine Reihe von Möglichkeiten bietet diese Informationen (--eol-from-Mime-Typ, --default-EOL zu schließen, --keywords-off, --auto-props). Subversion Dateieigenschaften: · Subversion erlaubt beliebige Texteigenschaften zu Dateien angehängt werden. cvs2svn stellt einen Mechanismus solche Eigenschaften einzustellen, wenn eine Datei zuerst in das Repository (--auto-Requisiten) sowie ein Haken hinzugefügt wird, dass Benutzer beliebige Dateieigenschaften über Python Code einstellen können. Der Umgang mit .cvsignore: · .Cvsignore Dateien im CVS-Repository in die äquivalent svn umgewandelt werden: ignore Eigenschaften in der Ausgabe. Standardmäßig werden die .cvsignore Dateien selbst nicht in der Ausgabe enthalten; Dieses Verhalten kann durch Angabe der --keep-cvsignore Option geändert werden. Subversion-Repository Anpassung: · CVS2SVN bietet viele Optionen, mit denen Sie die Struktur des resultierenden Subversion-Repositorys (--Trunk, - Hydranches, --tags, - Preune, --symbol-Transformation usw. anpassen können; siehe auch die zusätzliche Anpassung Optionen, die mit der Methode von --Options-Datei verfügbar sind). Unterstützung für mehrere Zeichenkodierungen: · CVS erfasst nicht, welche Zeichenkodierung zum Speichern von Metainformationen wie Dateinamen, Autorennamen und Protokollnachrichten verwendet wurde. CVS2SVN bietet Optionen, um einen solchen Text in UTF-8 (---DOCKING, M - -Fercod-Codierung) umzuwandeln. Lieferantenzweige: · CVS unterstützt "Vendor-Filialen", die (unter Umständen) den Inhalt der Hauptentwicklungslinie beeinflussen. CVS2SVN erkennt Anbieterzweige, wann immer dies möglich ist, und behandelt sie intelligent. Beispielsweise, · CVS2SVN kopiert explizit Explizit Verkäufe-Zweig-Revisionen zurück in den Rutsch · Wenn ein Anbieterzweig von der Umwandlung ausgeschlossen ist, führt CVS2SVN den relevanten Anbieterzweig über den Rumpf auf den Rumpf, so dass der Inhalt des Kofferraums immer noch derselbe wie in CVS ist. Wenn andere Tags oder Zweige von diesen Revisionen einspühren, werden sie auch zum Kofferraum gepfropft. · Wenn eine Datei in CVS importiert wird, erstellt CVS mit demselben Inhalt zwei Revisionen ("1.1" und "1.1.1.1"). CVS2svn verwirft die Revision der redundanten "1.1" in solchen Fällen (da die Revision "1.1.1.1" sowieso in den Kofferraum kopiert wird). · Häufig erstellen Benutzer Lieferantenzweige unnötig, indem Sie mit "CVS-Import" mithilfe des "CVS-Imports" unnötig verwenden, um ihre eigenen Quellen in das CVS-Repository zu importieren. Solche Anbieterzweige enthalten keine nützlichen Informationen, so dass standardmäßig CVS2SVN einen Lieferantenzweig ausschließt, der nur für einen einzelnen Import verwendet wurde. Sie können dieses Standardverhalten ändern, indem Sie die Option des Pflege-Trivialimports angeben. CVS-Macken: · CVS2SVN geht in eine große Länge, um mit den vielen Macken von CVS umzugehen. Beispielsweise, · CVS stellt keine störenden "1.1" -Verschöpfungen ein, wenn eine Datei auf einem Zweig hinzugefügt wird. CVS2SVN verwirft diese Revisionen. · Wenn eine Datei auf einem Zweig hinzugefügt wird, führt CVS zu Beginn des Zweigs eine unechte "tote" -Verrevision ein, um anzuzeigen, dass die Datei nicht existiert, wenn der Zweig erstellt wurde. cvs2svn löscht diese unechten Revisionen und fügt die Datei zum richtigen Zeitpunkt in der Branche hinzu. Robust gegen die Beschädigung der Repository: cvs2svn weiß, wie man mehrere Arten von CVS-Repository-Korruptionen bewältigt, die häufig gemeldet wurden, und ergibt in anderen Fällen informative Fehlermeldungen: · Eine RCS-Datei, die sowohl in als auch aus dem Verzeichnis "Dachgeschoss" existiert. · Mehrere DELTATEXT-Blöcke für eine einzige CVS-Datei-Revision. · Mehrere Revisionsheader für dieselbe CVS-Datei-Revision. · Tags und Zweige, die sich auf nicht vorhandene Revisionen oder schlecht gebildete Revisionsnummern beziehen. · Wiederholte Definitionen eines Symbolnamens auf dieselbe Revisionsnummer. · Zweige, die keine assoziierten Etiketten haben. · Ein Verzeichnisname, der mit einem Dateinamen in Konflikt (in oder aus dem Dachboden) steht. · Dateinamen, die verbotene Zeichen enthalten. Zeitstempelfehlerkorrektur: · Viele CVS-Repositorys enthalten Zeitstempelfehler, da Server-Uhren während eines Teils der Historie des Repositorys falsch eingestellt werden. Die Rekonstruktion von CVS2SVN ist relativ robust gegen Zeitstempelfehler, und es schreibt monotonische Zeitstempel in das Subversion-Repository. Skalierbar: · CVS2SVN speichert die meisten Zwischendaten auf On-Disk-Datenbanken, sodass er sehr große CVS-Repositorys mit einer angemessenen RAM-Menge umwandeln kann. Konvertierungen werden als mehrere Pässe organisiert und können bei Problemen bei Problemen in einem beliebigen Durchgang neu gestartet werden. Konfigurierbar / ausdehnbar mit Python: · Viele Aspekte der Konvertierung können mit Python-Plugins angepasst werden, die mit CVS2SVN über dokumentierte Schnittstellen (--Optionen) interagieren.


cvs2svn. Zugehörige Software

Pilz

Ein einfaches und offenes Szenenbasis-Game-Motor, der auf Pyglet basiert ...

154 1.6 MB

Herunterladen

Rjson

freier und offener Quelle reflektierender JSON-Serializer / Parser in Haskell geschrieben ...

170 12 KB

Herunterladen