CVS vs SVN
CVS (Samtidigt Versions System) och SVN (SubVersioN) är två versionskontroll filsystem som används i allmänhet av lag som samarbetar på ett enda projekt. Dessa system gör det möjligt för medarbetarna att hålla reda på de förändringar som görs och veta vem som utvecklar vilken och huruvida en gren ska appliceras på huvudstammen eller ej. CVS är den mycket äldre av de två och det har varit det vanliga samarbetsverktyget för många människor. SVN är mycket nyare och introducerar många förbättringar för att möta de flesta människors krav.
Förmodligen är den största förbättringen för SVN tillägget av atomförbindelser. Atomfördrag tillåter att varje åtagande tillämpas helt eller inte alls. Detta kan vara ganska användbart när servern kraschar mitt i ett commit. Med SVN kan commitet rullas tillbaka medan CVS inte kunde ångra det partiella åtagandet. Ett annat tillägg är möjligheten att renameera och flytta filerna i förvaret. Med SVN har de filer som har bytt namn eller tagits bort fortfarande sin revisionshistorik och metadata. CVS kan inte skjuta några nya ändringar i föräldraförteckningarna medan det kan uppnås i SVN med hjälp av vissa verktyg. Dessa funktioner stöds helt enkelt inte av CVS eller var inte en del av sin ursprungliga design och orsakar ofta många problem för vissa människor.
När det gäller att få tillgång till antingen via ett nätverk, stöder båda proprietära protokoll som kan tunnelas genom en SSH-anslutning för att säkerställa säkerheten för den information som överförs över nätverket. SVN lägger till lite mer med WebDAV + DeltaV. Detta protokoll är baserat på HTTP och HTTPS och ger användarna ett annat alternativ att ansluta till SVN.
För de flesta som bara börjar med SVN och CVS är SVN det överlägsna och logiska alternativet mellan de två. Det ger användaren den rätta funktionen som matchar hans behov. Den enda anledningen till att du fortsätter använda CVS är om du fastnar med ett äldre system som är ganska svårt att flytta till ett SVN-system.
Sammanfattning:
1. SVN är nyare och mer avancerad jämfört med den mycket äldre CVS
2. SVN tillåter atomförlopp medan CVS inte gör det
3. SVN tillåter byte namn och flyttning medan CVS inte gör det
4. SVN möjliggör förökning av förlag till föräldraförråd medan CVS inte gör det
5. SVN stöder två nätverksprotokoll medan CVS endast stöder en