CVS i Subversion

Anonim

CVS vs Subversion

Sistem istovremenih verzija (također poznat kao sustav istodobnog verzije ili CVS) je sustav za nadzor revizije slobodnog softvera - to jest program koji je otvoren za upotrebu javnosti koji upravlja promjenama dokumenata, programa i drugih informacija pohranjenih na računalu datoteke). Omogućuje više razvojnih programera da surađuju.

Subversion (također poznat kao SVN) je sustav kontrole verzije koji se koristi za održavanje trenutnih i prethodnih verzija datoteka (poput izvornog koda, web stranica i dokumentacije). To je izravna nadogradnja CVS-a i njegovog najkompatibilnijeg nasljednika. To je također open source tehnologija i široko se koristi u više projekata - kao što su Apache Software Foundation, Free Pascal, MediaWiki i Google kod.

CVS koristi arhitekturu poslužitelja klijenta - to znači da poslužitelj pohranjuje trenutnu verziju (ili verzije) određenog projekta, kao i spremanje njegove povijesti. Klijent se zatim povezuje s poslužiteljem kao sredstvom za "check out" kopiju projekta koji je završen prije njegova povezivanja s poslužiteljem. Klijent tada može raditi na ovoj kopiji projekta, a zatim provjeriti promjene koje je napravio kasnije. Kao i dopuštajući jednom klijentu da se prijavite na kopiju određenog projekta, CVS omogućuje više klijenata da rade na istom projektu i istovremeno se prijavljuju na isti projekt. Klijenti će moći izmijeniti datoteke unutar vlastite radne kopije projekta i poslati ih na poslužitelj.

Subversion počinje - to jest, stvara niz provizornih promjena i čini ih trajnim - kao pravi atomski (ili niz operacija podataka u kojima se sve događa ili se ništa ne događa) operacija. Subversion također omogućuje korisnicima preimenovanje, kopiranje, premještanje i / ili uklanjanje datoteka; međutim, te datoteke zadržat će cijelu povijest revidiranja. Ovaj sustav koristi parsable output, nativno klijent / poslužitelj slojevite knjižnice dizajn, i grananje i označavanje kao jeftini operacije (neovisno o veličini datoteke). Postoje jezična veza za PHP, Python, Perl i Java. Subversion također košta ovisno o veličini promjene, a ne veličini podataka.

CVS može održavati različite grane projekta - to jest, različiti aspekti ili permutacije istog projekta mogu se odvojiti od izvornog projekta i CVS će održavati sve verzije (izdana verzija projekta čini jednu granu za ispravke grešaka, dok druga verzija koja se trenutno razvija može sadržavati nove značajke i velike promjene te na primjer formirati granu istog projekta).

Sažetak: 1. CVS omogućuje više korisnika da surađuju na istom projektu; Subversion održava trenutne i prethodne verzije datoteka. 2. CVS omogućuje korisnicima da se prijavite na isti projekt i mijenjati; Subversion se obvezuje kao istinska atomska operacija. 3. CVS može održavati različite grane projekta; Subversion koristi parsable output.