Помещение файла в репозитарий CVS

Для помещения нового файла в репозитарий CVS команды выполняются из рабочего каталога — „песочницы“. Там же должен располагаться и новый файл.

В начале работы следует прежде всего обновить локальные копии командой update, которая синхронизирует изменения по направлению из репозитария в „песочницу“:

oleg@localhost:~/sandbox/linuxcookbook:$ cvs update
cvs update: Updating .
cvs update: Updating content
? content/maninfopagesprint.html

При выполнении команды update вопросительным знаком отмечаются файлы, которые еще не были занесены в репозитарий CVS (в данном случае — content/maninfopagesprint.html).

Для просмотра списка изменений без модификации „песочницы“ используется команда status:

oleg@localhost:~/sandbox/linuxcookbook:$ cvs status
cvs status: Examining .
cvs status: Examining content
===================================================================
File: adduser.html      Status: Up-to-date
 
   Working revision:    1.2     Wed Nov  5 11:31:09 2008
   Repository revision: 1.2     /home/oleg/cvsroot/linuxcookbook/content/adduser.html,v
   Sticky Tag:          (none)
   Sticky Date:         (none)
   Sticky Options:      (none)
 
===================================================================
File: cdbootdiskcreating.html   Status: Up-to-date
 
   Working revision:    1.1.1.1 Wed Nov  5 11:04:09 2008
   Repository revision: 1.1.1.1 /home/oleg/cvsroot/linuxcookbook/content/cdbootdiskcreating.html,v
   Sticky Tag:          (none)
   Sticky Date:         (none)
   Sticky Options:      (none)
 
===================================================================
File: cdcopy.html       Status: Up-to-date
 
   Working revision:    1.1.1.1 Wed Nov  5 11:04:09 2008
   Repository revision: 1.1.1.1 /home/oleg/cvsroot/linuxcookbook/content/cdcopy.html,v
   Sticky Tag:          (none)
   Sticky Date:         (none)
   Sticky Options:      (none)
 
...

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

oleg@localhost:~/sandbox/linuxcookbook:$ cvs add content/maninfopagesprint.html
cvs add: scheduling file `content/maninfopagesprint.html` for addition
cvs add: use `cvs commit` to add this file permanently
oleg@localhost:~/sandbox/linuxcookbook:$ cvs commit -m `Printing man and info pages` \
> content/maninfopagesprint.html
RCS file: /home/oleg/cvsroot/linuxcookbook/content/maninfopagesprint.html,v
done
Checking in content/maninfopagesprint.html;
/home/oleg/cvsroot/linuxcookbook/content/maninfopagesprint.html,v  <--  maninfopagesprint.html
initial revision: 1.1
done

Команда commit -m показывает, как создать запись в журнале для одного файла из командной строки без запуска текстового редактора.

Даже в однопользовательском репозитарии „песочницу“ необходимо синхронизировать с репозитарием, а в многопользовательских репозитариях синхронизация особенно важна, т.к. при синхронизации значительно снижается частота возникновения конфликтов.

Powered by Drupal — Design by drupal.mensh.ru.