Команда checkout: извлечение исходных текстов для редактирования
- Краткое описание: `checkout [ключи] модули...'
- Требует: репозиторий
- Изменяет: рабочий каталог
- Синонимы: co, get
Создаёт или обновляет рабочий каталог, содержащий копии файлов с исходными текстами, заданных с помощью параметра модули. Команду checkout обычно следует использовать перед использованием всех прочих команд CVS, так как большинство их них требует наличия рабочего каталога.
модули -- это либо алфавитные имена коллекции каталогов и файлов с исходными текстами, или пути к каталогам и файлам в репозитории. Алфавитные имена описываются в файле `modules'. See section Файл `modules'.
В зависимости от модуля, который вы задали, команда checkout может рекурсивно создавать каталоги и заполнять их соответствующими файлами. Теперь вы можете редактировать эти файлы когда угодно, независимо от того, что кто-то ещё редактирует копии тех же самых файлов); затем обновите их, чтобы получить изменения, помещённые другими в репозиторий; зафиксируйте результаты вашей работы в репозиторий.
Заметьте, что checkout сам создаёт каталоги. В текущем каталоге при выполнении команды checkout образуется каталог верхнего уровня, чьё имя обычно совпадает с именем указанного модуля. В случае псевдонима модуля созданный подкаталог может иметь другое имя, но можно быть уверенным, что это будет именно подкаталог, и что checkout покажет относительный путь, ведущий к каждому файлу, который извлекается в ваш рабочий каталог (если вы не укажете глобальный ключ `-Q').
Команда checkout создаёт файлы с правами на чтение и запись, если не задан глобальный ключ `-r' (see section Глобальные ключи командной строки), не установлена переменная окружения CVSREAD, и за этим файлом не установлено слежение (see section Слежение за чужими исходными текстами).
Заметьте, что допускается также выполнение checkout в каталоге, который был создан другой командой checkout. Это похоже на выполнение команды update с ключом `-d', в том смысле, что в вашем рабочем каталоге появятся новые каталоги, которые были созданы в репозитории. Однако же, команда checkout требует имени модуля, тогда как команда update -- имени каталога. Для использования checkout таким способом её нужно выполнять из каталога верхнего уровня, поэтому прежде чем использовать checkout, чтобы обновить существующий каталог, не забудьте перейти в каталог верхнего уровня.
Сообщения, которые выдаются командой checkout, описаны в section Сообщения команды update.