CVS i Subversion

Anonim

CVS vs. Subversion

Concurrent Versions System (znany również jako Concurrent Versioning System lub CVS) to system kontroli wersji darmowego oprogramowania - czyli jest to program, który jest otwarty do użytku publicznego, który zarządza zmianami w dokumentach, programach i innych informacjach przechowywanych w komputerze pliki). Pozwala wielu programistom współpracować.

Subversion (znany również jako SVN) to system kontroli wersji używany do utrzymywania obecnych i poprzednich wersji plików (takich jak kod źródłowy, strony internetowe i dokumentacja). Jest to bezpośrednia aktualizacja CVS i jego najbardziej zgodnego następcy. Jest to również technologia open source i była szeroko stosowana w wielu projektach - takich jak Apache Software Foundation, Free Pascal, MediaWiki i kod Google.

CVS wykorzystuje architekturę serwera klienta - oznacza to, że serwer przechowuje aktualną wersję (lub wersje) danego projektu, a także zapisuje jego historię. Następnie klient łączy się z serwerem w celu "sprawdzenia" kopii projektu, który został ukończony przed połączeniem się z serwerem. Klient może wtedy pracować nad tą kopią projektu, a następnie sprawdzać zmiany, które wprowadził później. Oprócz umożliwienia jednemu klientowi sprawdzenia kopii danego projektu, CVS umożliwia jednoczesną pracę wielu klientów i jednoczesne sprawdzenie tego samego projektu. Klienci będą mogli modyfikować pliki w ich własnej roboczej kopii projektu i wysłać te zmiany na serwer.

Subversion zobowiązuje się - to znaczy tworzy zestaw wstępnych zmian i czyni je stałymi - jako prawdziwe atomowe (lub serię operacji na danych, w których wszystko się dzieje lub nic nie działa). Subversion pozwala także użytkownikom na zmianę nazwy, kopiowanie, przenoszenie i / lub usuwanie plików; jednak te pliki zachowają pełną historię zmian. Ten system wykorzystuje wyjście parsable, natywnie projekt biblioteki warstwowej typu klient / serwer oraz rozgałęzianie i tagowanie jako tanie operacje (niezależnie od rozmiaru pliku). Istnieją powiązania językowe dla PHP, Python, Perl i Java. Subversion kosztuje również według wielkości zmiany, a nie rozmiaru danych.

CVS może utrzymywać różne gałęzie projektu - to znaczy, różne aspekty lub permutacje tego samego projektu mogą odejść od projektu źródłowego, a CVS będzie utrzymywał wszystkie wersje (wydana wersja projektu tworzy jedną gałąź dla poprawiania błędów, podczas gdy inna wersja, która jest obecnie opracowywana, może zawierać nowe funkcje i główne zmiany i na przykład stanowić gałąź tego samego projektu).

Streszczenie: 1. CVS pozwala wielu użytkownikom współpracować nad tym samym projektem; Subversion obsługuje bieżącą i poprzednią wersję plików. 2. CVS umożliwia użytkownikom sprawdzenie tego samego projektu i jego modyfikację; Subversion działa jako prawdziwe operacje atomowe. 3. CVS może utrzymywać różne gałęzie projektu; Subversion używa parsable output.