Rozdiel medzi CVS a SVN

CVS vs SVN

CVS (Concurrent Versions System) a SVN (SubVersioN) sú dva systémy súborov na správu verzií, ktoré bežne používajú tímy, ktoré spolupracujú na jednom projekte. Tieto systémy umožňujú spolupracovníkom sledovať uskutočnené zmeny a vedieť, kto ich vyvíja a či by sa vetva mala použiť na hlavný kmeň alebo nie. CVS je oveľa starší z nich a pre mnoho ľudí je to štandardný nástroj spolupráce. SVN je omnoho novšia a prináša veľa vylepšení zameraných na požiadavky väčšiny ľudí.

Pravdepodobne najväčším zlepšením SVN je pridanie atómových záväzkov. Atómové záväzky umožňujú, aby sa každý záväzok uplatňoval úplne alebo vôbec. To môže byť veľmi užitočné, keď server upadne v priebehu potvrdenia. Pri SVN môže byť odovzdanie zrušené, zatiaľ čo CVS nemohlo vrátiť späť čiastočné odovzdanie. Ďalším prírastkom je schopnosť čisto premenovať a presunúť súbory v úložisku. V prípade SVN majú súbory, ktoré boli premenované alebo odstránené, stále svoju históriu revízií a metadáta. CVS tiež nedokáže presadiť žiadne nové zmeny do rodičovských úložísk, zatiaľ čo sa dá dosiahnuť pomocou SVN pomocou niektorých nástrojov. Tieto funkcie CVS jednoducho nepodporujú alebo neboli súčasťou jeho pôvodného návrhu a pre niektorých ľudí často spôsobujú veľa problémov.

Pokiaľ ide o prístup k jednej z nich prostredníctvom siete, oba protokoly podporujú patentované protokoly, ktoré je možné tunelovať prostredníctvom pripojenia SSH, aby sa zaistila bezpečnosť informácií prenášaných sieťou. SVN pridáva o niečo viac s WebDAV + DeltaV. Tento protokol je založený na HTTP a HTTPS a poskytuje používateľom ďalšiu možnosť pripojenia k SVN.

Pre väčšinu ľudí, ktorí začínajú so SVN a CVS, je SVN vynikajúcou a logickou možnosťou medzi nimi. Poskytuje užívateľovi správnu funkciu nastavenú podľa jeho potrieb. Jediným dôvodom, prečo naďalej používať CVS, je, ak ste zaseknutý so starým systémom, ktorý je pomerne ťažké prejsť na systém SVN..

Zhrnutie:
1. SVN je novšia a pokročilejšia v porovnaní s oveľa starším CVS
2. SVN povoľuje atómové potvrdenia, zatiaľ čo CVS nie
3. SVN umožňuje premenovanie a presun, zatiaľ čo CVS nie
4. SVN umožňuje šírenie zmien do rodičovských úložísk, zatiaľ čo CVS nie
5. SVN podporuje dva sieťové protokoly, zatiaľ čo CVS podporuje iba jeden