Стандартные ключи командной строки
В этой главе описываются `ключи_команды', доступные для использования с несколькими командами CVS. Эти ключи всегда задаются справа от имени `команды_CVS'. Не все команды поддерживают эти ключи, но лишь те, для которых ключ имеет смысл. Однако, если команда имеет один из этих ключей, вы можете быть уверены в одинаковом поведении этих ключей с разными командами. (Другие ключи команд, описанные вместе с отдельными командами, могут иметь различное поведение с разными командами CVS).
Предупреждение: команда `history' является исключением, она поддерживает различные ключи, конфликтующие даже со стандартными ключами.
@macro std-option-f
-f
Если не найдено совпадающей ревизии, извлечь самую свежую ревизию (а не игнорировать файл).
@macro std-option-l -l
Не обходить дерево каталогов, работать только в текущем рабочем каталоге.
@macro std-option-R{verb} -R
\verb\ каталоги рекурсивно. По умолчанию это именно так. См. section Рекурсивное поведение.
-D дата
Использовать самую свежую ревизию, сделанную не позже чем дата. В данном случае дата -- это одиночный аргумент, являющийся описанием прошедшей даты.
Указанная дата становится липкой, когда вы используете её, чтобы сделать копию файла с исходным текстом, то есть, когда вы извлекаете рабочий файл, используя `-D', то CVS запоминает указанную дату, так что последующие команды обновления, выполненные в том же каталоге, будут использовать ту же дату (дальнейшая информация по липким меткам и датам находится в see section Липкие метки).
Ключ `-D' доступен совместно с командами checkout, diff, export, history, rdiff, rtag и update. (Команда history использует этот ключ немного отличающимся способом; see section Ключи команды history).
CVS поддерживает большое множество форматов даты. Самыми стандартными являются ISO-8601 (от Международной Организации по Стандартизации) и стандарт электронной почты (описанные в RFC822, с поправками в RFC1123).
Даты в формате ISO-8601 имеют множество вариантов, но вот несколько примеров:
1972-09-24 1972-09-24 20:05
Вероятно, вы совсем не желаете увидеть перечисление полного списка форматов, описанных в ISO8601 :-).
Вдобавок к датам, разрешенным в электронной почте в Интернет, CVS также позволяет пропускать некоторые поля. Например:
24 Sep 1972 20:05 24 Sep
Считается, что дата находится в местной временн'ой зоне, если только таковая не задана явно.
Предпочтительными являются два формата представления данных. Однако же, CVS в настоящее время поддерживает широкий диапазон других форматов представления даты. Они нарочно не документируются здесь, а будущие версии CVS могут уже не поддерживать их.
Одним из таких форматов является месяц/день/год. Такой взаимный порядок дня и месяца может смутить некоторых, например, `1/4/96' --- это четвертое января, а не первое апреля.
Не забудьте написать аргумент команды `-D' в кавычках, чтобы ваша оболочка не посчитала пробелы разделителями аргументов. Команда, использующая ключ `-D', может выглядеть так:
$ cvs diff -D "1 hour ago" cvs.texinfo
-f
Когда вы задаёте команде CVS конкретную дату или метку, то эта команда обычно игнорирует файлы, не содержащие заданной метки (или не существовавшие на указанный момент времени). Используйте ключ `-f', если вы хотите, чтобы файлы извлекались, даже если они не совпадают с меткой или со временем, в этом случае будет использована самая свежая ревизия файла.
`-f' доступна с командами annotate, checkout, export, rdiff, rtag, и update.
Предупреждение: Команды commit и remove
также имеют ключ `-f', но он имеет другое поведение. Смотри section Ключи команды commit и section Удаление файлов.
-k kflag
Изменить обработку ключевых слов по умолчанию. See section Подстановка ключевых слов, о значении kflag. Указанное значение kflag становится липким, когда вы создаёте личную копию файла. Это означает, что когда вы используете этот ключ вместе с командами checkout или update, то CVS связывает значение kflag с файлом, и использует это значение при последующих командах обновления этого файла, если вы не укажете обратного.
Ключ `-k' доступен с командами add, checkout, diff, import и update.
@std-option-l
Предупреждение: это не тот глобальный ключ `-l', который вы указываете слева от команды CVS!
Доступен с командами annotate, checkout, commit, diff, edit, editors, export, log, rdiff, remove, rtag, status, tag, unedit, update, watch, и watchers.
-m "сообщение"
Использовать "сообщение" в качестве журнальной записи, вместо того, чтобы запустить редактор.
Флаг доступен с командами add, commit и import.
-n
Не выполнять соответствующие программы при выполнении команд `checkout', `commit' и `tag'. (В базе данных модулей могут быть указаны программы, которые нужно выполнить при выполнении одной из этих команд, а этот ключ используется для того, чтобы избежать этого).
Предупреждение: этот флаг -- не тот глобальный флаг `cvs -n', который задаётся слева от команды CVS!
Флаг доступен с командами checkout, commit, export и rtag.
-P
Удалять пустые каталоги. См. section Удаление каталогов.
-p
Выдать файлы, извлеченные из репозитория, на стандартный вывод, а не записывать их в текущем каталоге. Флаг доступен с командами checkout и update.
-R
Рекурсивно обрабатывать каталоги. Включено по умолчанию. Доступно с командами annotate, checkout, commit, diff, edit, editors, export, rdiff, remove, rtag, status, tag, unedit, update, watch и watchers.
-r метка
Использовать ревизию, указанную в параметре метка, вместо головной ревизии (HEAD) по умолчанию. Помимо меток, созданных с помощью команд tag и rtag, всегда доступны две специальные метки: `HEAD' ссылается на самую свежую ревизию, находящуюся в репозитории, а `BASE'
ссылается на ревизию, которую вы извлекли в текущий рабочий каталог.
Указанная метка становится липкой, если вы используете checkout или update, чтобы создать собственную копию файла: CVS запоминает метку и продолжает использовать её при дальнейших командах обновления, пока вы не укажете обратного (дальнейшая информация о липких метках/датах находится в section Липкие метки). Метка может быть номером ревизии или именем. See section Метки ревизий.
Задание глобального ключа `-q' вместе с ключом `-r'
часто бывает полезным, чтобы избежать предупреждающих сообщений о том, что RCS-файл не содержит указанной метки.
Предупреждение: не перепутайте этот ключ с глобальным ключом `cvs -r', который вы пишете слева от команды CVS!
Ключ `-r' доступен с командами checkout, commit, diff, history, export, rdiff, rtag и update.
-W spec
Задаёт имена файлов, которые нужно отфильтровать.Этот ключ можно использовать в командной строке несколько раз. spec
может быть шаблоном имени файла, таким же, который можно использовать в файле `.cvswrappers'. Ключ доступен с командами import и update.
Все публикации раздела