Skillnad mellan CVS och Subversion Skillnaden mellan

Anonim

CVS vs Subversion

Samtidigt Versions System (även kallat Concurrent Versioning System eller CVS) är ett fritt program för revisionskontroll av programvara, det vill säga det är ett program som är öppet för användning för att allmänheten som hanterar ändringar i dokument, program och annan information som lagras i datafiler). Det låter flera utvecklare samarbeta.

Subversion (även kallat SVN) är ett versionskontrollsystem som används för att behålla aktuella och föregående versioner av filer (som källkod, webbsidor och dokumentation). Det är en direkt uppgradering av CVS och dess mest kompatibla efterträdare. Det är också en öppen källteknik och har använts i många projekt, t.ex. Apache Software Foundation, Free Pascal, MediaWiki och Google-kod.

CVS använder klientserverarkitekturen - det innebär att en server lagrar en aktuell version (eller versioner) av ett visst projekt samt att spara dess historik. Klienten kopplar sedan till servern som medel för att "kolla in" en kopia av projektet som har slutförts före anslutningen till servern. Klienten kan då arbeta med den här kopian av projektet och sedan kontrollera de förändringar han gjort senare. Förutom att en kund klarar av att checka in på en kopia av ett visst projekt, tillåter CVS flera klienter att arbeta på och checka in på samma projekt samtidigt. Klienterna kommer att kunna ändra filerna i sin egen arbetskopia av projektet och skicka dessa ändringar till servern.

Subversion förbinder sig - det vill säga skapar en uppsättning preliminära förändringar och gör dem permanenta - som sann atom (eller en serie datoperationer där allting inträffar eller ingenting inträffar). Subversion tillåter även användare att byta namn på, kopiera, flytta och / eller ta bort filer; Emellertid kommer dessa filer att behålla sin fullständiga revisionshistorik. Systemet använder parserbar utmatning, inbyggd klient / serverlagrad biblioteksdesign och förgrening och märkning som billiga operationer (oberoende av filens storlek). Det finns språkbindningar för PHP, Python, Perl och Java. Subversion kostar också enligt förändringsstorleken och inte storleken på data.

CVS kan bibehålla olika grenar av ett projekt, det vill säga, olika aspekter eller permutationer av samma projekt kan avgrena sig från källprojektet och CVS kommer att behålla alla versioner (en släppt version av Projektet bildar en gren för buggfixar, medan en annan version som för närvarande utvecklas kan innehålla nya funktioner och stora förändringar och till exempel bilda en gren av samma projekt).

Sammanfattning:

1. CVS tillåter flera användare att samarbeta på samma projekt; Subversion behåller aktuella och föregående versioner av filer.

2. CVS tillåter användare att checka in på samma projekt och ändra det; Subversion åtar sig som sann atomaktivitet.

3. CVS kan bibehålla olika grenar av ett projekt; Subversion använder parserbar utdata.