Перейти к содержимому

Разница между CVS и Subversion

    CVS против Subversion

    Concurrent Versions System (также известная как Concurrent Versioning System или CVS) — это система контроля ревизий свободного программного обеспечения, то есть открытая для публичного использования программа, которая управляет изменениями документов, программ и другой информации, хранящейся в компьютерных файлах). Она позволяет сотрудничать нескольким разработчикам.

    Subversion (также известная как SVN) — это система контроля версий, используемая для поддержания текущих и предыдущих версий файлов (таких как исходный код, веб-страницы и документация). Она является прямой модернизацией CVS и ее наиболее совместимым преемником. Она также является технологией с открытым исходным кодом и широко используется во многих проектах — таких как Apache Software Foundation, Free Pascal, MediaWiki и Google code.

    CVS использует архитектуру клиент-сервер — это означает, что на сервере хранится текущая версия (или версии) конкретного проекта, а также его история. Затем клиент подключается к серверу, чтобы «проверить» копию проекта, который был завершен до его подключения к серверу. Клиент может работать над этой копией проекта, а затем проверять внесенные изменения. Кроме того, что CVS позволяет одному клиенту проверять копию определенного проекта, CVS позволяет нескольким клиентам работать и проверять один и тот же проект одновременно. Клиенты могут изменять файлы в своей рабочей копии проекта и отправлять эти изменения на сервер.

    Subversion фиксирует — то есть создает набор предварительных изменений и делает их постоянными — как настоящие атомарные операции (или серии операций с данными, в которых либо происходит все, либо не происходит ничего). Subversion также позволяет пользователям переименовывать, копировать, перемещать и/или удалять файлы; однако эти файлы сохраняют свою полную историю ревизий. Эта система использует разборчивый вывод, встроенную клиент-серверную многоуровневую библиотеку, а также ветвление и тегирование как дешевые операции (не зависящие от размера файла). Существуют языковые привязки для PHP, Python, Perl и Java. Стоимость Subversion также зависит от размера изменений, а не от размера данных.

    CVS может поддерживать различные ветви проекта — то есть различные аспекты или перестановки одного и того же проекта могут ответвляться от исходного проекта, и CVS будет поддерживать все версии (выпущенная версия проекта образует одну ветвь для исправления ошибок, в то время как другая версия, находящаяся в разработке, может содержать новые возможности и значительные изменения и, например, образовывать ветвь того же проекта).

    Резюме:

    1. CVS позволяет нескольким пользователям работать над одним и тем же проектом; Subversion сохраняет текущую и предыдущую версии файлов.

    2. CVS позволяет пользователям регистрироваться в одном и том же проекте и изменять его; Subversion фиксирует как настоящие атомарные операции.

    3. CVS может поддерживать различные ветви проекта; Subversion использует разборчивый вывод.

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *

    Adblock
    detector