Razlika između CVS i SVN

CVS vs SVN

CVS (sustav istodobne verzije) i SVN (SubVersioN) su dva datotečna sustava za nadzor verzija koje popularno koriste timovi koji surađuju na jednom projektu. Ovi sustavi omogućavaju suradnicima da prate nastale promjene i znaju tko se razvija i treba li grana primijeniti na glavni trup ili ne. CVS je puno stariji od njih dvoje i bio je standardni alat za suradnju mnogih ljudi. SVN je mnogo noviji i unosi mnoštvo poboljšanja u svrhu rješavanja zahtjeva većine ljudi.

Vjerojatno najveće poboljšanje SVN-a je dodavanje atomske obrade. Atomske obveze omogućuju primjenu svake obveze u potpunosti ili uopće ne postoji. Ovo može biti vrlo korisno kada se poslužitelj sruši usred počinjenja. Sa SVN-om se obveza može vratiti natrag dok CVS ne može poništiti djelomični angažman. Drugi dodatak je mogućnost čistog preimenovanja i premještanja datoteka u spremištu. Sa SVN datoteke koje su preimenovane ili uklonjene i dalje sadrže povijest revizije i metapodate. CVS također nije u mogućnosti pogurati bilo kakve nove promjene nadređenih spremišta, a to se može postići u SVN-u uz uporabu nekih alata. CVS jednostavno ne podržavaju ove značajke ili nisu bile dio njegovog početnog dizajna i često uzrokuju mnogo problema nekim ljudima.

U pogledu pristupa bilo kojem putem mreže, oba podržavaju vlasničke protokole koji se mogu tunelizirati kroz SSH vezu kako bi se osigurala sigurnost informacija koje se prenose preko mreže. SVN dodaje malo više s WebDAV + DeltaV. Ovaj se protokol temelji na HTTP-u i HTTPS-u i korisnicima pruža drugu mogućnost povezivanja na SVN.

Za većinu ljudi koji tek počinju sa SVN i CVS, SVN je superiorna i logična opcija između ova dva. Korisniku pruža pravu postavljenu značajku koja odgovara njegovim potrebama. Jedini razlog da nastavite koristiti CVS je ako ste zaglavili sa naslijeđenim sustavom koji je prilično teško prijeći na SVN sustav.

Sažetak:
1. SVN je noviji i napredniji u odnosu na mnogo stariji CVS
2. SVN dopušta atomsko izvršenje, dok CVS ne
3. SVN omogućuje preimenovanje i premještanje dok CVS ne
4. SVN omogućuje širenje promjena u matičnim spremištima dok CVS nema
5. SVN podržava dva mrežna protokola dok CVS podržava samo jedan