cvs2svn

Een tool voor het migreren van een CVS-repository naar subversie of git
Download nu

cvs2svn Rangschikking & Samenvatting

Advertentie

  • Rating:
  • Vergunning:
  • Freeware
  • Prijs:
  • FREE
  • Naam uitgever:
  • The cvs2svn Team
  • Uitgever website:
  • http://cvs2svn.tigris.org/
  • Besturingssystemen:
  • Mac OS X
  • Bestandsgrootte:
  • 468 KB

cvs2svn Tags


cvs2svn Beschrijving

Een tool voor het migreren van een CVS repository Subversion of git cvs2svn de belangrijkste doelstellingen uit het ontwerp zijn 100% behoud van data en robuustheid. cvs2svn kan gewoon om te zetten over een CVS repository die je ooit hebt gezien, met inbegrip van gcc, FreeBSD, Mozilla, KDE, GNOME.cvs2svn waakt wat er is gebeurd in de geschiedenis van uw CVS repository en herhalingen dat de geschiedenis zo nauwkeurig mogelijk in het doel SCM. Alle herzieningen, takken, markeringen, log berichten, auteursnamen, en zich verbinden data worden geconverteerd. cvs2svn afleidt welke CVS modificaties tegelijkertijd werden gemaakt en voert deze wijzigingen gegroepeerd als changesets in het doel SCM. cvs2svn houdt zich ook bezig met veel CVS eigenaardigheden en is zeer configureerbaar. Hier zijn een aantal belangrijke eigenschappen van "cvs2svn": Geen informatie verloren: · Cvs2svn werkt hard om te voorkomen dat van uw CVS repository enige informatie te verliezen (tenzij u uitdrukkelijk vragen om een gedeeltelijke omzetting met behulp van --trunk-only of --exclude). wijzigingensets: · CVS platen wijzigingen file-by-file, en niet bij te houden welke bestanden zijn gewijzigd op hetzelfde moment. cvs2svn maakt gebruik van informatie, zoals het bestand wijziging tijd, log berichten, en de afhankelijkheid van informatie aan de oorspronkelijke changesets afleiden. cvs2svn maakt changesets die meerdere vertakkingen en / of meerdere projecten (zoals toegestaan door CVS) beïnvloeden, of kan worden geconfigureerd om dergelijke changesets opgesplitst in afzonderlijke commits (--no-cross-branch-commits zie ook optiebestand). Multiproject omzettingen: · Cvs2svn kan een CVS repository die meerdere projecten naar één Subversion repository met de conventionele multiproject directory lay-out te zetten. Zie de FAQ voor meer informatie. Branch vs. tag: · CVS kan dezelfde naam symbool soms om te worden gebruikt als een tak, soms als een tag. cvs2svn heeft opties en heuristiek om te beslissen hoe een dergelijke "gemengde" symbolen (--symbol-hints, --force-tak, --force-tag, --symbol-standaard) te zetten. Branch / tag uitsluiting: · Cvs2svn kan de gebruiker takken en / of labels die uit de omzetting geheel worden uitgesloten (--symbol-tips, --exclude) specificeren. Het controleert of de uitsluitingen zelfconsistente (bijvoorbeeld, is het niet mogelijk een tak wordt uitgesloten als een tak die kiemen van het niet uitgesloten is). Branch / tag hernoemen: · Cvs2svn kunnen vertakkingen en labels wijzigen tijdens de omzetting door middel van reguliere-expressiepatronen (--symbol-transformatie). Het kiezen van SVN wegen voor branches / tags: · U kunt kiezen wat SVN paden te gebruiken als de stam / branches / tags te directories (--trunk, --branches, --tags), of stel willekeurige paden voor specifieke CVS branches / markeringen (--symbol-hints). Bijvoorbeeld, wilt u misschien een aantal tags om het project / markeringen directory, maar anderen project / releases op te slaan. Branch en tag ouders: · In veel gevallen is de CVS geschiedenis is dubbelzinnig over welke tak diende als ouder van een andere tak of label. cvs2svn bepaalt het meest waarschijnlijke ouder voor symbolen met behulp van cross-bestandsinformatie. U kunt keuzes cvs2svn op een case-by-case basis overschrijven met de optie --symbol-hints. Branch en tag creatie tijden: · CVS niet opnemen als takken en tags worden gemaakt. cvs2svn creëert vertakkingen en labels in een redelijke tijd, in overeenstemming met de bestandsrevisies die zijn gecodeerd en probeert elk binnen een enkel Subversion commit indien mogelijk. Mime types: · CVS niet mime types bestanden opnemen. cvs2svn biedt een aantal mechanismen voor het kiezen van een redelijke bestandstypen mime (--mime-types, --Auto-props). Binary vs. tekst: · Veel CVS gebruikers niet systematisch vast te leggen welke bestanden binair zijn en welke de tekst zijn. (Dit is vooral belangrijk als de repository op niet-Unix systemen.) Cvs2svn verschaft een aantal mogelijkheden om deze gegevens af te leiden (--eol-van-mime-type --default-EOL, --keywords-off, --Auto-props). Subversion bestand eigenschappen: · Subversion maakt willekeurige tekst eigenschappen om bestanden te worden bevestigd. cvs2svn biedt een mechanisme om dergelijke eigenschappen te stellen wanneer een bestand eerst wordt toegevoegd aan de repository (--Auto-props) alsmede een haak die gebruikers kunnen gebruiken om willekeurige bestandseigenschappen via Python code in te stellen. Behandeling van .cvsignore: · .Cvsignore bestanden in de CVS repository worden omgerekend in svn: negeren van de uitgang. Standaard wordt de .cvsignore bestanden zelf zijn niet opgenomen in de uitvoer; dit gedrag kan worden gewijzigd door het opgeven van de optie --keep-cvsignore. Subversion repository op maat: · CVS2SVN biedt vele opties waarmee u de structuur van de resulterende subversie-repository kunt aanpassen (--RUNK, --BRANCHEN, - TAGS, --NO-PRUNE, - Symbool-transformatie, enz.; Zie ook de extra maatwerk Opties beschikbaar door gebruik te maken van de methode - bestanden). Ondersteuning voor meervoudige tekencoderingen: · CVS neemt niet op welke tekencodering werd gebruikt om metainformatie zoals bestandsnamen, auteurnamen en log-berichten op te slaan. CVS2SVN biedt opties om dergelijke tekst om te zetten in UTF-8 (--coding, - fallack-codering). Verkoper takken: · CVS ondersteunt "leveranciertakken", die (onder enkele omstandigheden) de inhoud van de hoofdlijn van ontwikkeling beïnvloeden. CVS2SVN detecteert waar mogelijk leverancierstakken en verwerkt ze intelligent. Bijvoorbeeld, · CVS2SVN expliciet kopieert de leveranciers van leveranciers terug naar de kofferbak, zodat een afrekenen van de kofferbak dezelfde resultaten geeft onder SVN zoals onder CVS. · Als een leveranciertak is uitgesloten van de conversie, gracht CVS2SVN de relevante leverancier van leveranciers op de kofferbak, zodat de inhoud van de kofferbak nog steeds hetzelfde is als in CVS. Als andere tags of takken uit deze revisies ontspruiten, worden ze ook geënt naar romp. · Wanneer een bestand in CVS wordt geïmporteerd, creëert CVS twee revisies ("1.1" en "1.1.1.1") met dezelfde inhoud. CVS2SVN vergtoet de redundante "1.1" -opvang in dergelijke gevallen (aangezien de revisie "1.1.1.1" toch wordt gekopieerd). · Vaak maken gebruikers de leverancierstakken onnodig door "CVS-import" te gebruiken om hun eigen bronnen in de CVS-repository te importeren. Dergelijke leveranciersbranches bevatten geen nuttige informatie, dus kan CVS2SVN dus elke leveranciertak uitsluit die alleen werd gebruikt voor een enkele import. U kunt dit standaardgedrag wijzigen door de optie --Keep-Trivial-Imports op te geven. CVS Quirks: · CVS2SVN gaat tot grote lengte om met de vele eigenaardigheden van CVS om te gaan. Bijvoorbeeld, · CVS introduceert valse "1.1" -opviezen wanneer een bestand op een filiaal wordt toegevoegd. CVS2SVN vergtoet deze revisies. · Als een bestand op een filiaal wordt toegevoegd, introduceert CVS een onechte "dode" -opvang aan het begin van de tak om aan te geven dat het bestand niet bestond toen het filiaal is gemaakt. CVS2SVN verwijdert deze valse revisies en voegt het bestand op het tak op de juiste tijd toe. Robuust tegen repository corruptie: CVS2SVN weet hoe te omgaan met verschillende soorten CVS-repository corruptie die vaak is gemeld en geeft in andere gevallen informatiefoutmeldingen: · Een RCS-bestand dat zowel in als buiten de map "zolder" bestaat. · Meerdere DELTATEXT-blokken voor een enkele CVS-bestanden. · Meerdere revisiekoppen voor dezelfde herziening van CVS-bestand. · Tags en filialen die verwijzen naar niet-bestaande herzieningen of slechtgevormde revisienummers. · Herhaalde definities van een symboolnaam op hetzelfde revisienummer. · Takken die geen geassocieerde labels hebben. · Een mapnaam die conflicteert met een bestandsnaam (in of uit de zolder). · Bestandsnamen die verboden karakters bevatten. Tijdstempel foutcorrectie: · Veel CVS-repositories bevatten tijdstempelfouten als gevolg van de klokken van de servers die tijdens een deel van de geschiedenis van de repository verkeerd worden ingesteld. De historische wederopbouw van CVS2SVN is relatief robuust tegen tijdstempelfouten en het schrijft monotone tijdstempels naar de Subversion-repository. Schaalbaar: · CVS2SVN slaat de meeste tussengegevens op naar op-schijfdatabases, zodat deze zeer grote CVS-repositories kan omzetten met behulp van een redelijke hoeveelheid RAM. Conversies worden georganiseerd als meerdere passes en kunnen opnieuw worden opgestart met een willekeurige pass in het geval van problemen. Configureerbaar / uitbreidbaar met Python: · Veel aspecten van de conversie kunnen worden aangepast met behulp van Python-plug-ins die communiceren met CVS2SVN via gedocumenteerde interfaces (- vaningen).


cvs2svn Gerelateerde software

Van Helsing

GRATIS gestroomlijnde geheugenprofiler die Ruby-ontwikkelaars met real-time grafieken levert ...

299 3.8 MB

Downloaden

Srecord

Gratis en open source-tools voor het manipuleren van EPROM Load-bestanden ...

158 758 KB

Downloaden