1. ИМЯ 1
2. ФОРМАТ 1
3. ОПИСАНИЕ 1
4. ОПЦИИ 1
5. СОВМЕСТИМОСТЬ 6
6. ФАЙЛЫ 6
7. СРЕДА 6
8. ДИАГНОСТИКА 6
9. ИДЕНТИФИКАЦИЯ 6
10. СМ. ТАКЖЕ 7
11. ОШИБКИ 7
1. ИМЯ
rcs - изменить атрибуты файла RCS
2. ФОРМАТ
rcs options file...
3. ОПИСАНИЕ
rcs создает новые файлы RCS или изменяет атрибуты существующих.
Файл RCS содержит множественные модификации текста, список дос-
тупа, запись изменений, поясняющий текст и некоторые управляющие
атрибуты. Для запуска rcs регистрационное имя пользователя долж-
но быть в списке доступа, за исключением случаев, когда: список
пуст, пользователь - владелец файла или привилегированный поль-
зователь, или присутствует опция -i.
Имена путей, соответствующие RCS-суффиксу, означают файлы RCS;
все другие означают рабочие файлы. Имена спарены, как объяснено
в ci(1). Номера модификаций используют синтаксис, описанный в
ci(1).
4. ОПЦИИ
-i Создать и инициализировать новый RCS-файл, но не со-
хранять никакой модификации. Если RCS-файл не имеет пу-
тевого префикса, то попробуйте поместить его сначала в
поддиректорий ./RCS, а затем в текущий директорий. Если
RCS-файл уже существует, то выдать ошибку.
-alogins
Добавить регистрационные имена из разделенного запятыми
списка logins в список доступа файла RCS.
-Aoldfile
Добавить список доступа файла oldfile к списку доступа
файла RCS.
-e[logins]
Стереть регистрационные имена, появляющиеся в разделенном
запятыми списке logins, из списка доступа файла RCS. Если
- 2 -
logins опущен, то стереть весь список доступа.
-b[rev]
Установить ветвь по умолчанию на rev. Если rev опущена,
то ветвь по умолчанию переустанавливается на (динамичес-
ки) наивысшую ветвь на стволе.
-cstring
Установить начальный участок с комментариями в string.
Первоначальная ci или rcs -i без -c "сочиняет" начальный
участок с комментариями, исходя из суффикса имени рабо-
чего файла.
Эта опция устарела, так как RCS обычно использует пре-
фикс предшествующей строки $Log$ при вставке регистраци-
онных строк во время оформленного ввода (см. co(1)). Од-
нако старые версии RCS используют начальный участок с
комментариями вместо префикса строки $Log$, так что если
вы планируете доступ к файлу и со старой и с новой вер-
сиями RCS, то убедитесь, что его начальный участок с
комментариями соответствует его префиксу строки $Log$.
-ksubst
Установить подстановку ключевых слов по умолчанию на
subst. Эффект подстановки ключевых слов описан в co(1).
Давая явную опцию -k для co, rcsdiff и rcsmerge перекры-
вают это умолчание. Остерегайтесь rcs -kv, так как -kv
несовместима с co -l. Используйте rcs -kkv для восста-
новления нормальной подстановки ключевых слов по умолча-
нию.
-l[rev]
Блокировать модификацию с номером rev. Если задана
ветвь, то блокировать самую позднюю модификацию на этой
ветви. Если rev опущена, то блокировать самую позднюю
модификацию на ветви по умолчанию. Блокирование пре-
дотвращает перекрытие изменений. Если кто-то еще уже
поставил блокировку, то она нарушается, как при rcs -u
(см. ниже).
- 3 -
-u[rev]
Разблокировать модификацию с номером rev. Если задана
ветвь, то разблокировать самую позднюю модификацию на
этой ветви. Если rev опущена, то удалить самую позднюю
блокировку, наложенную пользователем. В норме только
блокиратор модификации может разблокировать ее. Кто-то
другой, разблокируя модификацию, нарушает блокировку.
Это вызывает посылку сообщения первоначальному блокира-
тору. Сообщение содержит комментарий от имени нарушите-
ля. Сообщение кончается концом_файла или строкой, содер-
жащей `.'.
-L Установить блокировку на строгую. Это означает, что
владелец файла RCS не отстранен от блокировки для оформ-
ленного ввода. Эту опцию нужно использовать для совмест-
но используемых файлов.
-U Установить блокировку на нестрогую. Это означает, что
владелец файла не нуждается в блокировке модификации для
оформленного ввода.Эта опция не будет полезной для сов-
местно используемых файлов. Строгое ли блокирование по
умолчанию, определяется вашим системным администратором,
но в норме оно строгое.
-mrev:msg
Заменяет журнальную запись модификации rev на msg.
-M Не посылать сообщения при нарушении блокировки кем-то
другим. Эта опция - не значащая для случайного (нерегу-
лярного) употребления; ее имеет смысл применять только
для программ, которые предупреждают пользователей други-
ми средствами и вызывают rcs -u как низкоуровневую опе-
рацию, нарушающую блокировку.
-nname[:[rev]]
Ассоциировать символическое имя name с ветвью или моди-
фикацией rev. Удалить символическое имя, если и `:' и
rev опущены; иначе печатать сообщение об ошибке, если
- 4 -
rev уже ассоциирована с другим номером. Если rev сим-
вольная, то она расширяется перед ассоциированием. rev,
состоящая из номера ветви с последующей точкой, означает
текущую самую позднюю модификацию на ветви. Двоеточие с
пустой rev означает текущую самую позднюю модификацию на
ветви по умолчанию, в норме на стволе. Например, rcs
-nname: RCS/* ассоциирует name с текущей самой поздней
модификацией из всех именованных файлов RCS; это конт-
растирует с rcs -nname:$ RCS/* , которая ассоциирует
name с номерами модификаций, извлеченными из строк клю-
чевых слов в соответствующих рабочих файлах.
-Nname[:{rev]]
Действует наподобие -n, только перезаписывает любое пре-
дыдущее присвоение name.
-orange
удаляет модификации, заданные диапазоном range. Диапа-
зон, состоящий из одного номера модификации, означает
эту модификацию. Диапазон, состоящий из номера ветви,
означает самую позднюю модификацию на этой ветви. Диапа-
зон в форме rev1:rev2 означает модификации от rev1 до
rev2 на одной ветви, :rev означает от начала ветви, со-
держащей rev, до rev включительно и rev: означает от мо-
дификации rev до конца ветви, содержащей rev. Ни одна из
удаляемых модификаций не может иметь ветви или блоки-
ровки.
-q Исполнять "молча"; не печатать диагностику.
-I Исполнять интерактивно, даже если стандартный выход - не
терминал.
-sstate[:rev]
Установить атрибут состояния модификации rev на state.
Если rev - номер ветви, то предполагается самая поздняя
модификация на этой ветви. Если rev опущена, то предпо-
лагается самая поздняя модификация на ветви по умолча-
нию. Для state приемлем любой идентификатор. Полезен на-
- 5 -
бор состояний: Exp (экспериментальное), Stab
(стабильное) и Rel (released). По умолчанию ci(1) уста-
навливает состояние модификации на Exp.
-t[file]
Записать поясняющий текст из содержимого файла file в
файл RCS, удалив существующий текст. Имя пути файла не
может начинаться с - . Если file опущен, то получить
текст со стандартного ввода, заканчивающийся концом_фай-
ла или строкой, содержащей точку. Делать подсказку для
текста, если возможна интерактивная работа; см. -I. При
-i поясняющий текст получается, даже если не задана -t.
-t-string
Записать поясняющий текст из строки string в файл RCS,
удалив существующий текст.
-T Сохранить время модифицирования в файле RCS, если модифи-
кация не удаляется. Эта опция может подавлять лишнюю пе-
рекомпиляцию, вызванную зависимостью некоторой копии ра-
бочего файла от файла RCS через make(1). Используйте эту
опцию осторожно; она может подавлять перекомпиляцию, да-
же когда она нужна, т.е. когда изменение в файле RCS оз-
начало бы изменение в строках ключевых слов в рабочем
файле.
-V Печатать номер версии RCS.
-Vn Эмулировать RCS версии n. См. co(1) для деталей.
-xsuffixes
Использовать suffixes для характеризации файла RCS. См.
ci(1) для деталей.
-zzone Использовать zone как часовой пояс по умолчанию. Эта оп-
ция бездействует; она представлена для совместимости с
другими командами RCS.
Должна быть задана минимум одна явная опция для обеспечения сов-
- 6 -
местимости с будущими планируемыми расширениями команды rcs.
5. СОВМЕСТИМОСТЬ
Опция -brev генерирует файл RCS, который не может быть проанали-
зирован системой RCS версии 3 или ранее.
Опции -ksubst (исключая -kkv) генерируют файл RCS, который не мо-
жет быть проанализирован системой RCS версии 4 или ранее.
Используйте rcs -Vn, чтобы сделать файл RCS приемлемым для RCS
версии n путем устранения информации, которая могла бы "сму-
тить" версию n.
RCS версии 5.5 и ранее не поддерживает опцию -x и требует суф-
фикса ,v в имени пути RCS.
6. ФАЙЛЫ
rcs имеет доступ к файлам примерно так же, как ci(1), только она
использует номинального пользователя для всех видов доступа, не
записывает рабочий файл или свой директорий и даже не читает ра-
бочий файл, если не специфицирован номер модификации $.
7. СРЕДА
RCSINIT
опции добавляются к началу списка аргументов, разделенных
пробелами. См. ci(1) для деталей.
8. ДИАГНОСТИКА
Имя пути RCS и удаляемые модификации пишутся на диагностический
выход. Статус выхода = 0, если и только если все операции были
успешными.
9. ИДЕНТИФИКАЦИЯ
Автор: Walter F. Tichy.
Manual Page Revision: 5.13; Release Date: 1995/06/05.
Copyright (C) 1982, 1988, 1989 Walter F. Tichy.
Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995 Paul
Eggert.
- 7 -
10. СМ. ТАКЖЕ
rcsintro(1), co(1), ci(1), ident(1), rcsclean(1),
rcsdiff(1), rcsmerge(1), rlog(1), rcsfile(5)
Walter F. Tichy, RCS--A System for Version Control,
Software--Practice & Experience 15, 7 (July 1985),
637-654.
11. ОШИБКИ
Катастрофа (например, развал системы) может принудить RCS оста-
вить семафорный файл, что приведет позднее к вызовам RCS для
подтверждения того, что файл RCS используется. Для исправления
этого удалите семафорный файл. Имя семафорного файла обычно на-
чинается с `,' или кончается на ` _'.
Разделитель для диапазонов модификаций в опции -o должен бы быть
- вместо :, но это ведет к путанице, когда символические имена
содержат -. Для обратной совместимости rcs -o еще поддерживает
старый разделитель - , но она предупреждает об этом устарелом
употреблении.
Символические имена не обязаны ссылаться на существующие модифи-
кации или ветви. Например, опция -o не удаляет символические
имена для устраненных модификаций; надо использовать -n для уда-
ления имен.