Алексей Махоткин

домашняя страница

CVS — Система Управления Параллельными Версиями

Go to the first, previous, next, last section, table of contents.


Ключи по умолчанию и файл ~/.cvsrc

Имеются определённые ключи команд CVS, которые используются столь часто, что вы захотите настроить для них что-то типа синонима. Основным примером (именно он и привел к поддержке файла `~/.cvsrc’) является то, что многим не нравится стандартная форма выдачи изменений, которая используется в команде `diff’, и они предпочитают контекстную или унифицированную выдачу изменений, которые выглядят значительно лучше.

Файл `~/.cvsrc’ – это способ установить ключи по умолчанию для команд CVS, не используя синонимов, скриптов оболочки и т. п.

Формат файла `~/.cvsrc’ прост. В нем ищется строка, чье начало совпадает с именем выполняемой команды CVS. Если совпадающая строка найдена, то остаток строки расщепляется на ключи командной строки и добавляется к командной строке перед ключами из настоящей командной строки.

Если у команды есть два имени (например, checkout и co), то для поиска используется официальное имя, не обязательно совпадающее с тем, что использовалось при вызове CVS. Таким образом, если содержимое файла `~/.cvsrc’ таково:

log -N
diff -u
update -P
checkout -P

то к аргументам команды `cvs checkout foo’ добавится ключ `-P’, и точно то же самое произойдет с командой `cvs co foo’.

При использовании вышеприведенного файла команда `cvs diff foobar’ будет выдавать изменения в унифицированном формате. `cvs diff -c foobar’ будет, как обычно, выдавать контекстные изменения. Получение изменений в “старом” формате чуть более сложно, потому что у команды diff нет способа задать выдачу в “старом” формате, поэтому вам потребуется использовать `cvs -f diff foobar’.

Вместо имени команды вы можете использовать cvs, чтобы задать глобальные ключи (see section Глобальные ключи командной строки). Например, такая строка в файле `~/.cvsrc’ включит использование шестого уровня компрессии:

cvs -z6


Go to the first, previous, next, last section, table of contents.

Comments