Różnica między CVS a Subversion

CVS vs. Subversion

Concurrent Versions System (znany również jako Concurrent Versioning System lub CVS) to system kontroli wersji wolnego oprogramowania - jest to program otwarty do użytku publicznego, który zarządza zmianami dokumentów, programów i innych informacji przechowywanych na komputerze akta). Umożliwia współpracę wielu programistów.

Subversion (znany również jako SVN) to system kontroli wersji służący do utrzymywania bieżącej i poprzednich wersji plików (takich jak kod źródłowy, strony internetowe i dokumentacja). Jest to bezpośrednie uaktualnienie CVS i jego najbardziej kompatybilnego następcy. Jest to również technologia open source i jest szeroko stosowana w wielu projektach - takich jak Apache Software Foundation, Free Pascal, MediaWiki i kod Google.

CVS używa architektury serwera klienta - oznacza to, że serwer przechowuje bieżącą wersję (lub wersje) określonego projektu, a także zapisuje jego historię. Następnie klient łączy się z serwerem, aby „sprawdzić” kopię projektu, który został ukończony przed połączeniem z serwerem. Klient jest wtedy w stanie pracować nad tą kopią projektu, a następnie sprawdzić zmiany, które wprowadził później. Oprócz zezwalania jednemu klientowi na odprawę kopii określonego projektu, CVS pozwala wielu klientom na jednoczesną pracę nad tym samym projektem. Klienci będą mogli modyfikować pliki we własnej kopii roboczej projektu i wysyłać te zmiany na serwer.

Subversion zatwierdza - to znaczy tworzy zestaw wstępnych zmian i czyni je trwałymi - jako prawdziwe operacje atomowe (lub szereg operacji na danych, w których albo wszystko się dzieje, albo nic się nie dzieje). Subversion pozwala również użytkownikom zmieniać nazwy, kopiować, przenosić i / lub usuwać pliki; pliki te zachowają jednak pełną historię zmian. Ten system używa analizowalnych danych wyjściowych, natywnie warstwowego projektu biblioteki klient / serwer oraz rozgałęziania i oznaczania jako tanich operacji (niezależnie od wielkości pliku). Istnieją powiązania językowe dla PHP, Python, Perl i Java. Subversion kosztuje również zgodnie z wielkością zmiany, a nie wielkością danych.

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

Streszczenie:
1. CVS pozwala wielu użytkownikom współpracować przy tym samym projekcie; Subversion zachowuje bieżącą i poprzednie wersje plików.
2. CVS pozwala użytkownikom zameldować się w tym samym projekcie i zmodyfikować go; Subversion popełnia jako prawdziwe operacje atomowe.
3. CVS może utrzymywać różne gałęzie projektu; Subversion używa parsowalnego wyniku.