Verschil tussen CVS en SVN Verschil tussen
CVS versus SVN
CVS (Concurrent Versions System) en SVN (SubVersioN) zijn twee versiebeheerbestandssystemen die in de volksmond worden gebruikt door teams die samenwerken aan een enkel project. Deze systemen stellen de medewerkers in staat om de veranderingen die worden gemaakt bij te houden en te weten wie zich ontwikkelt en of een filiaal moet worden toegepast op de hoofdstam of niet. CVS is de veel oudere van de twee en het was de standaard samenwerkingshulp voor veel mensen. SVN is veel nieuwer en introduceert veel verbeteringen om tegemoet te komen aan de eisen van de meeste mensen.
Waarschijnlijk de grootste verbetering voor SVN is de toevoeging van atomaire commits. Atomic commits laten toe dat elke commit volledig of helemaal niet wordt toegepast. Dit kan best handig zijn als de server vastloopt in het midden van een commit. Met SVN kan de commit worden teruggedraaid, terwijl CVS de gedeeltelijke commit niet ongedaan kan maken. Een andere toevoeging is de mogelijkheid om de bestanden in de repository zuiver te hernoemen en te verplaatsen. Bij SVN bevatten de bestanden die zijn hernoemd of verwijderd nog steeds hun revisiegeschiedenis en metagegevens. CVS kan ook geen nieuwe wijzigingen in de parent-repositories pushen, terwijl dit met behulp van sommige tools in SVN kan worden bereikt. Deze functies worden eenvoudigweg niet ondersteund door CVS of waren geen onderdeel van het oorspronkelijke ontwerp en veroorzaken vaak veel problemen voor sommige mensen.
Wat betreft de toegang tot beide via een netwerk, ondersteunen beide eigen protocollen die kunnen worden getunneld via een SSH-verbinding om de beveiliging van de informatie die wordt verzonden over het netwerk te verzekeren. SVN voegt een beetje meer toe met WebDAV + DeltaV. Dit protocol is gebaseerd op HTTP en HTTPS en biedt gebruikers een andere optie om verbinding te maken met de SVN.
Voor de meeste mensen die net met SVN en CVS beginnen, is SVN de superieure en logische optie tussen beide. Het biedt de gebruiker de juiste functieset om aan zijn behoeften te voldoen. De enige reden om CVS te blijven gebruiken, is als u vastzit aan een legacy-systeem dat vrij moeilijk te verplaatsen is naar een SVN-systeem.
Samenvatting:
1. SVN is nieuwer en geavanceerder vergeleken met de veel oudere CVS
2. SVN maakt atomische commits mogelijk terwijl CVS niet
3 is. SVN staat hernoemen en verplaatsen toe terwijl CVS niet
4 is. Met SVN kunnen wijzigingen in de parent-repositories worden doorgevoerd terwijl CVS niet
5 is. SVN ondersteunt twee netwerkprotocollen terwijl CVS slechts één