Создание репозитория RCS

Опубликовано mensh - сб, 11/01/2008 - 14:11

Простая программа управления версиями RCS (Revision Control System) идеально подходит для создания простого локального репозитория с целью отслеживания изменений в любых текстовых документах.

Простая программа управления версиями RCS

В системе управления версиями RCS используются два каталога: в рабочем каталоге хранятся рабочие копии документов, а каталог RCS выполняет функции репозитория. Файлы репозитория, хранящие информацию о различных версиях, снабжаются суффиксом .v.

Для создания собственного репозитория RCS в рабочем каталоге создается подкаталог RCS:

oleg@localhost:~:$ cd ~/webprojects/linuxcookbook/content/
oleg@localhost:~/webprojects/linuxcookbook/content:$ \
> mkdir RCS

Занесение файла в репозиторий выполняется следующей командой:

oleg@localhost:~/webprojects/linuxcookbook/content:$ \
> ci -u versioncontrolsystems.html
RCS/versioncontrolsystems.html,v <-- versioncontrolsystems.html
enter description, terminated with single `.` or end of file:
NOTE: This is NOT the long message!
>> RCS and CVS
>> .
initial revision: 1.1
done

Для редактирования файл извлекается из репозитория и открывается в любом текстовом редакторе:

oleg@localhost:~/webprojects/linuxcookbook/content:$ \
> co -l versioncontrolsystems.html
RCS/versioncontrolsystems.html,v --> versioncontrolsystems.html
revision 1.1 (locked)
done
oleg@localhost:~/webprojects/linuxcookbook/content:$ \
> vim versioncontrolsystems.html

После завершения редактирования следует сохранить и закрыть файл, а затем занести его в репозиторий, добавив комментарий с описанием изменений:

oleg@localhost:~/webprojects/linuxcookbook/content:$ \
> ci -u versioncontrolsystems.html
RCS/versioncontrolsystems.html,v <-- versioncontrolsystems.html
new version: 1.2; previous version: 1.1
enter log message, terminated with single `.` or end of file:
>> Незначительная правка
>> .
done

Файлы в рабочем каталоге представляют временные версии. Когда файл достигнет состояния, которое необходимо зафиксировать, то его следует занести в репозиторий.

Основные команды RCS:

  • ci -u — занести файл в репозитарий и снять блокировку;
  • со -l — извлечь файл из репозитория и заблокировать.

Флаг -u при занесении файла в репозиторий защищает копию в рабочем каталоге. Файл в рабочем каталоге становится доступным только для чтения, что предотвращает случайные изменения и напоминает, что для редактирования файл необходимо извлечь из репозитория.

Установка блокировки позволяет извлекать и редактировать файл лишь одному человеку, поэтому RCS не подходит для проектов с большим количеством участников.

Поделиться с друзьями