CVS.Система управления параллельными версиями


CVS.Система управления параллельными версиями

Обзор
Что такое CVS?
Чем не является CVS?
Пример работы с CVS
Получение исходного кода
Фиксирование изменений
Уборка за собой

Просмотр изменений
Управление ревизиями
Когда фиксировать изменения?


Несколько разработчиков
Статус файла
Извлечение свежей ревизии файла
Пример конфликта
Информирование коллег о фиксировании ревизий
Совместный доступ нескольких разработчиков к CVS
Как отследить, кто редактирует файлы?

Как с помощью CVS следить за определенными файлами?
CVS может посылать вам уведомления
Как редактировать файлы, за которыми наблюдают?
Информация о том, кто следит и кто редактирует
Использование слежений со старыми версиями CVS
Выбор между блокированными и неблокированными извлечениями
Подстановка ключевых слов
Список ключевых слов
Использование ключевых слов
Как избежать подстановки

Режимы подстановки
Проблемы с ключевым словом $Log$.
Как ваша система сборки взаимодействует с CVS
Слежение за чужими исходными текстами
Начальный импорт
Обновление с помощью импорта
Возврат к последней версии от поставщика
Как обрабатывать двоичные файлы при импорте в CVS
Как обрабатывать замену ключевых слов при импорте в CVS
Несколько веток поставщика

Специальные файлы
Краткий справочник по командам CVS

Справочник по административным файлам
Файл `modules'
Модули-синонимы
Обычные модули
Амперсенд-модули
Исключение каталогов из списка
Флаги модулей
Файл `cvswrappers'
Выполнение программ на разных стадиях фиксирования
Обычный синтаксис

Файл `commitinfo'
Проверка журнальных записей
Файл `editinfo'
Пример использования Editinfo
Файл loginfo
Пример использования loginfo
Обновление извлеченной копии
Файл rcsinfo
Игнорирование файлов с помощью cvsignore
Файл history

Подстановки в административных файлах
Файл конфигурации CVSROOT/config
Все переменные окружения, используемые в CVS
Руководство по командам CVS
Общая структура команд CVS
Код выхода CVS
Ключи по умолчанию и файл ~/.cvsrc
Глобальные ключи командной строки

Стандартные ключи командной строки
Команда admin: администрирование
Ключи команды admin
Команда checkout: извлечение исходных текстов для редактирования

Ключи команды checkout
Пример использования команды `checkout'
Команды commit: поместить файлы в репозиторий
Ключи команды commit
Помещение изменений на ветку
Создание ветки после редактирования
Команда diff: показать различия между ревизиями
Ключи команды diff
Примеры использования команды diff

Команда export: экспортировать исходные тексты
Ключи команды export
Команда history: показать состояние файлов и пользователей
Ключи команды history
Команда import: импортировать исходные тексты
Ключи команды import
Сообщения команды output
Примеры использования команды import
Команда log: напечатать информацию о файлах
Ключи команды log

Команда rdiff: выдать изменения между версиями в формате patch
Ключи команды rdiff
Примеры использования команды rdiff
Команда release: сообщить, что модуль более не используется
Ключи команды release
Сообщения команды release
Примеры использования команды release
Команда update: обновить рабочий каталог из репозитория
Ключи команды update

Сообщения команды update
Совместимость между версиями CVS
Исправление ошибок
Частичный список сообщений CVS
Ошибки при установке соединения с CVS-сервером

Другие распространенные проблемы
Титры
Что делать с ошибками в CVS и этом руководстве?
Репозиторий
Как сообщить CVS, где находится репозиторий
Как данные хранятся в репозитории
Где хранятся файлы в репозитории
Права доступа к файлам

Специфические для Windows права доступа
Чердак
Каталог CVS в репозитории
Блокировки в репозитории
Как в каталоге CVSROOT хранятся файлы
Как данные хранятся в рабочем каталоге

Административные файлы
Редактирование административных файлов
Несколько репозиториев
Создание репозитория
Резервное копирование репозитория
Перемещение репозитория
Сетевые репозитории
Требования к серверу
Соединение с помощью rsh
Прямое соединение с парольной аутентификацией

Настройка сервера для парольной аутентификации

CVS.Система управления параллельными версиями

Использование клиента с парольной аутентификацией
Вопросы безопасности при парольной аутентификации

Прямое соединение с использованием GSSAPI
Прямое соединение с помощью Kerberos
Использование параллельного cvs server для соединения
Доступ к репозиторию только для чтения
Временные каталоги на сервере
Начинаем проект под CVS
Помещение файлов в репозиторий
Создание дерева каталогов из нескольких файлов
Создание файлов из других систем контроля версий
Создание дерева каталогов с нуля

Определение модуля
Ревизии
Номера ревизий
Версии и ревизии
Назначение номеров ревизий
Метки ревизий
Что пометить в рабочем каталоге
Как помечать по дате или ревизии
Удаление, перемещение и удаление меток

Пометки при добавлении и удалении файлов
Липкие метки
Создание ветвей и слияние
Для чего хороши ветви?
Создание ветви
Доступ к веткам
Ветки и ревизии
Волшебные номера веток
Слияние веток
Многократное слияние из ветки

Слияние изменений между двумя ревизиями
При слиянии можно добавлять и удалять файлы
Рекурсивное поведение
Просмотр истории
Журнальные записи
База истории
Настройка журналирования
Команда annotate
Добавление, удаление и переименование файлов и каталогов
Добавление файлов в каталог

Удаление файлов
Удаление каталогов
Перемещение и переименование файлов
Обычный способ переименования
Перемещение файла с ревизиями
Копирование файла с ревизиями
Перемещение и переименование каталогов
Обработка двоичных файлов
Вопросы использования двоичных файлов

Как хранить двоичные файлы
CVS -- Система Управления Параллельными Версиями