Интернет магазин китайских планшетных компьютеров



Компьютеры - CVS

26 мая 2011


Оглавление:
1. CVS
2. Терминология
3. История и статус
4. Недостатки



CVS — программный продукт, относящийся к разряду систем управления версиями. Хранит историю изменений определённого набора файлов, как правило, исходного кода программного обеспечения, и облегчает совместную работу группы людей над одним проектом. CVS популярна в мире открытого ПО. Система распространяется на условиях лицензии GNU GPL.

В настоящее время активная разработка системы прекращена, в исходный код вносятся только небольшие исправления.

Некоторые источники считают CVS устаревшей системой, потому что CVS имеет ряд недостатков, и имеются более молодые альтернативные системы управления версиями, свободные от большинства недостатков CVS.

Основные концепции

CVS использует архитектуру клиент-сервер. Обычно клиент и сервер соединяются через локальную сеть или через Интернет, но могут работать и на одной машине, если необходимо вести историю версий локального проекта. Серверное ПО обычно работает под управлением Unix, тогда как CVS клиенты доступны во всех популярных операционных системах.

Сервер хранит в специальном хранилище текущую версию проекта и историю изменений, а клиент соединяется с ним, чтобы получить нужную ему версию или записать новую. Получив с сервера нужную версию, клиент создаёт локальную копию проекта — так называемую рабочую копию. После того как в файлы, находящиеся в рабочей копии, внесены необходимые изменения, они пересылаются на сервер.

Несколько клиентов могут работать над копиями проекта одновременно. Когда они отправляют результаты, сервер пытается слить их изменения в репозитории вместе. Если это не удаётся, например, в случае, когда два клиента изменили одни и те же строки в определённом файле, сервер не примет изменения от последней check-in операции и сообщит клиенту о конфликте, который должен быть исправлен вручную. Если check-in операция завершилась успешно, то номера версий всех затронутых файлов автоматически увеличиваются, и сервер записывает комментарий, дату и имя пользователя в свой журнал.

Клиенты также могут сравнить различные версии файлов, запросить полную историю изменений или получить исторический образ проекта на определённое число или по номеру ревизии. Многие Open Source-проекты разрешают анонимный доступ на чтение, который впервые был применён в OpenBSD. Это означает, что клиенты могут запрашивать и сравнивать версии файлов без пароля; только check-in-операции, ведущие к изменению данных в репозитории, требуют пароль.

Также для синхронизации локальной копии проекта с информацией на сервере клиенты могут использовать команду update, что позволяет избежать повторного скачивания всего проекта.

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

CVS использует механизм дельта-компрессии для эффективного хранения различных версий одного и того же файла.



Просмотров: 3215


<<< Deep Freeze