CVS -- ��� ������� �������� ������. ��������� ��, �� ������ ����� ������� ����� ������ � ��������� ��������. � ������� CVS �� ����� ������ ���������� � ������ �������, ����� ����� ��������, ��� ������ ������� � ������. ������ ��� ������ ��������.
��� ������� � ����������� Web-SynDic ����� ��������� � ���� .profile ��� .bashrc ����� ������ (������ login ������� ���� login �� ������� zeta.cs.karelia.ru):
CVSROOT=:pserver:login@zeta.cs.karelia.ru:/usr/local/cvsroot export CVSROOT
��� ������� ����������� ����� �
�������. ��� ����� � ������� ����������� ��� ������. ���
���������� ��� ���������� ������� login
, �������
���������� � ��� ������:
cvs login CVS password: _
����� ����, ��� �� ����� ������, CVS ��������� ���� ������
�� ������� zeta.cs.karelia.ru. ���� ��������� �����������, �� ���������� �����
������������, ������, ���� � ����������� � ������ ����������� �
����������� �����, ����� ��� ���������� ������ � ����
������������ �� ��� �� ����������� ��������� cvs login
.
(���� ��������� �������� �����������, CVS ����������, ���
������ �������, �, �����������, �� �� ����� ��������.)
������ ������ �������� � ����� $HOME/.cvspass. ����� ����, ��� �� ����� � �������, ��� ������� CVS, ������������ ���� ����������� � ��� ������������, ������ �������������������, ��������� ���� ����������� ������.
������ � ������������� �������� ����������� ����� ������� ��
����� ������� � ������� ������� cvs logout
.
����� ����, ��� �� ��������� �� ������ ����������� ������� �����
�������� �������, ������ ������������ ��������� ������� ���������
� ���� �����������. ����� �� �������, � ������� ��� ��� �����
����� ������������ ������� cvs update
� ����� �������
��������, ����� ������� ���� ������ � ���������, ����������� �
����������� ����� ����, ��� �� �������� ��� ��������� ���
��������� ��� ������� �������.
����������� �������� ���, ��� ������� ������ Web-SynDic. ������� ��� ���� �������� ������� ����� ��������� ����. ����������� �������
$ cvs checkout Web-SynDic
��� ���� ����� ������ ������� Web-SynDic, � ������� ����� �������� ��� ����� � ��������� ��������.
$ cd Web-SynDic $ ls CVS/ doc/ src/
������� CVS ������������ ��� ���������� ���� CVS. ������ ��� �� ������� ������������� ��� ������� �����, ����������� � ���� ��������.
�� ��������� ��� �����-���� ������, ���� ��� ����������� �������, ����� ���� ���������� ��������� � ������ ���������.
����������� ��������������� ������� ����� ���������� � ����������� ����� ������ ����� � ������ filename.
$ cvs commit filename
����� ��� ��������� ������� �������� � ����������� ��� ����������
����� �
$ cvs commit
CVS ��������� ��������, ����� ��������� ��� ������ ���������� ������. �� ������� � ���������� ����������� ������������ ���������.
���������� ��������� $CVSEDITOR
����������, ����� ������
�������� ����� ������. ���� $CVSEDITOR
�� �����������, ��
������������ $EDITOR
, ���� ���, � ���� �������,
�����������. ���� ��� ���������� �� �����������, ������������
�������� �� ��������� ��� ����� ������������ �������, ��������,
vi
��� UNIX ��� notepad
��� Windows 95/NT.
����� CVS ��������� ��������, � ������� ��� ����� ���������� ������ ����������� ���������� �����. ��� ������� CVS ���� ������ ��������� ��ԣ� ��������� ������� ��������� ����� � ��� �������� ���������, ����� �� ��� ������� ��� ��������. ����� �������, ���� ����� ��������� ����� ����������, � ��� ���������� �������� �������, �� ����� ��������� ����������. ����� ����� � ������ ������ �� �������� �� ��� �������� -- � �������� ������������ ��������� CVS ���������, ��� ���������� ����� �� ���������� � ������� ���� ������� �������.
����� ���, ��� ������� � ������ ��������, �� ������� �������
������� ����� Web-SynDic
. ��� ����� ������� ���:
$ cvs release -d Web-SynDic
������� release
���������, ��� ��� ���� ��������� ����
�������������. ������ ����������, ������� ���������� ������
��������� � ����� ������� ����� �������� �����, � �����
���������� ������������� ����� ��������� ������ ��� ��������
������� � ���� �������. ���� �� ����������� �������
release
� ������ -d, ��
��� ������� ���� ������� �����.
��� ����, ����� �������� ����� ���� � �������, ��������� ��������� ����:
����� ����� ������������ ������� add
��� ���������� ������
��������.
� ������� �� ����������� ������ ������, ������� add
��
�������� �����������.
$ cvs add -kb -m "A test file" filename $ cvs checkout -m "Added binary file" filename���� ���� �������� ����� �������� ��� -kb, ����� ������������ ������� cvs admin ��� ��������������. ��������,
$ cvs admin -kb filename $ cvs update -A filename������� cvs admin -kb ������������� ����� ����������� �������� ���� �� ��������� ��� ����� �����, �� �� �������� ������� ����� �����, ������� � ��� ����. ������, ��������� cvs admin -k ��� ��������� ������ ����������� �������� ����, ������, ��� ���� ����� �� ����������� �������� ������. ��� ��������, ��� ����, ������, � ������ ������� ������ �����-�� ���� ��� ���������, � ����� � ����� ������� �������� �������� ���� � ��� �� ������, �� CVS �� ������������ ������� ������� ���� � �������� ��� ��������� ������ � ����������� �� ������ ������, ������� �� ����������. ��� ������ ���� �������� �������� ������� �� ����������.
��� ��� ����� ������� ����, �������� ������ � ��� ������ ��������:
rm
.
����� �� ���������� �������� �����, CVS ����������, ���
����� ����� ����� �� ����������. �������, �� ����� ������������
�� ����� ������ � �� ������������ �� ������, ��� �� �����
������������ �������� ������ ���� � ��� �� ����� ������.
CVS ��������� ������� ��� �� ������ ��������� ����,
����������� �� ������ ��������� ������ -r ��� -D,
�������� � �������� checkout
��� update
.
��� ������ �������� ���������� ������:
$ cd test $ rm *.c $ cvs remove cvs remove: Removing . cvs remove: scheduling a.c for removal cvs remove: scheduling b.c for removal cvs remove: use cvs commit to remove these files permanently $ cvs commit cvs commit: Examining . cvs commit: Committing .
��� �������� ����� ������� ����� � ������������ ������ cvs
remove
, ��������� ���� ��������� ������ -f.
� �������� �������� ��������� � ���-�� ������� �������� ������ --- �� �� ������, ����� ������� ����������� � ������� ������� ��������, �� �� ������ �����, ����� ����� ���� ��������� ������ ������ �������, � ������� ��� ����������� �������.
����� ������� �������, ������ ��� ����� � ���. ��� �������
������� ��� �������. ������ ����� �� ������� �������� cvs
update
, cvs checkout
��� cvs export
���� ���������
������ -P, ������� �������� CVS ������� ������
�������� � ������� ��������. ��������, ����� ����� ����� ������
��������� -P, ���� �� ������, ����� ����������� ������
�������, ��������� � ���� ������ ����, ��������, .keepme,
����� �� ���� CVS � ������ -P ������� ���� �������.
����������� ������ � ������ ������� ��� �������������� �� ��������, �� ��������� ������� ����� ���� ������������. ��������������, ��� ���� old ����������������� � new. ������� �������� ����������� ����� � CVS �������� ����������� old � new, � ����� ���������� ������ CVS ��� �������� ����� old �� ����������� � ���������� ���� ����� new.
$ mv old new $ cvs remove old $ cvs add new $ cvs commit -m "old ������������ � new" old new
��� ����� ������� ������ ����������� ����, �� �� ���������
�������, � ��������� ������� ����������� ��������. ��������, ���
��� ������� � ������� ����� ����� ������� ������ ��� ����� ���, �
����������� �� ������� �������, � �������� �� �����������.
��������, cvs log old
������ ������ ������ ��
������� ��������������.
����� new �����������, ��������� ��� ������� �������� �
����, ������ � 1.1, ������� ���� ��� ��� �� ��������, �����������
���� ��������� ������ -r ����� �������
commit
.
����� ����, ��� �� ������ �������������� CVS ��� �������� ���������� �� ������� ���������: ����� �����, �����, ��� � ��� �������, ��� ����������� ������������� ��������� ��� ��������� �������.
������ ���, ����� �� ���������� ��������� � �����, ���
������������ ������� ��������������� ���������� ������.
��� ����, ����� ����������� ���������� ������, ����������� ��
���� ������ ������� ���������� � ���� �������������,
����������� ������� cvs log
.
�� ������ ������������ ���� history, �����
������������� ������������� �������� CVS. ����� �������
���������� �� ����� history, ����������� ������� cvs
history
.
������ ������� ����� ����� ���������� ����� �������. ������ ������� �������� ��� 1.1, 1.2, 1.3.2.2 ��� ���� 1.3.2.2.4.5. ����� ������� ������ �������� ������ ���������� ���������� �����, ����������� ������. �� ��������� ������� 1.1 -- ������ ������� �����. � ������ ������ ��������� ������� ����� ������ ����� ������������� �� �������. ��� ������ ���������� �������, ����� ������ ��������� ������ ������:
+-----+ +-----+ +-----+ +-----+ +-----+ ! 1.1 !----! 1.2 !----! 1.3 !----! 1.4 !----! 1.5 ! +-----+ +-----+ +-----+ +-----+ +-----+
��� ������� ����, � ����� ����� ���� ��������� �������. � ������������ �������� ����� ���� ��������� ������. ����������� ��������� ������ ���� ������ ������ ���� 4.1.1.
�� ���������, CVS ��������� ����� �������, �������� ������
����� � ���������� ������. ��������, 1.1
, 1.2
,
1.3
.
��� ���������� ������ ����� ������ ����� ������ ����� ��������, �
������ ����� ����� ��������� ����� ������� ������ ����� ������
������� ������� ����� � ��������. ��������, ���� � ��������
��������� ����� � ��������� 1.7
, 3.1
, 4.12
,
�� ����������� ���� ������� ����� ������� 4.1
.
������ ���������� �� ��������� ���������� � ������� ������� ---
����� ������ � ���, ��� � ��������� �������, �� �������� ������
CVS, � ����� � ������, �������������� ������� ������
���������, ��������, ������ 1 ������ �������� �� ������ 2.
������, ���� �� ������ ���������� ����� �������,
��� ������� ���� ��������� ������ -r �������
cvs commit
.
��������, ��� ����, ��� ������ ���� ����� ������, ������� ��, ��� �� ����������, ����� ������� 3.0, ��������� �������
$ cvs commit -r 3.0
��������, ��� �����, ������� �� ���������� ������ � ������ -r, ������ ���� ������ ������ ������������� ������ �������. ������, ���� ���������� ������� 3.0, �� �� ������ ������� cvs commit -r 1.3.
�� ������ ������������ ������� tag
, ����� ������ ���������
��� ������������ ������� �����. �� ������ ������������ ����
��������� ������ -v ������� status
, ����� �������
��� �����, ������� ����� ����, � ����� ����� ������ ������� ���
������������. ����� ����� ������ ���������� � ����� � �����
��������� �����, ����� � ����� - � _. ��� �����
����� BASE
� HEAD
��������������� ��� �������������
� CVS.
� ������������� ������� ��������, ��� �������� ����� � �����. ������� ������ ����������� ������ ������ �������� ��������, �� ���� ���, ��� ��������� ���� backend.c.
$ cvs tag rel-0-4 backend.c T backend.c $ cvs status -v backend.c =================================================================== File: backend.c Status: Up-to-date Version: 1.4 Tue Dec 1 14:39:01 1992 RCS Version: 1.4 /u/cvsroot/yoyodyne/Web-SynDic/backend.c,v Sticky Tag: (none) Sticky Date: (none) Sticky Options: (none) Existing Tags: rel-0-4 (revision: 1.4)
������� checkout
����� ���� ��������� ������ -r,
����������� ������� ������������ ������� ������. ���� ����
�������� ���������� ��������� ������, �� �������� ������� ������
1.0 ������ Web-SynDic � �����-������ � �������.
$ cvs checkout -r rel-1-0 Web-SynDic
��� �������, ��������, ���� ���-�� ��������, ��� � ��� ������ ���� ������, �� �� �� ������ ����� �� � ������� ������� �����.
CVS ��������� ����������� ��������� � ��������� ����� ����������, ���������� ������. ����� �� ��������� ����� �� �����, ��� ��������� �� ���������� � �������� ������ ��� �� ������ ������.
����� �� ������ ����������� ��������� � ����� ����� �� ������ ���
�� � ����� � �����, ��� ���������� ��������. �������
����������� cvs update -j
, ����� ����� ��������� �
������� �������, � ����� ��� ��������� ����� �������������, ���
���������� ��������
� ����������� ��������� �� ������ �����.
�����������, ��� ������� Web-SynDic ������ 1.0. �� ����������� ��� ����������, �������� ��������� ������ 1.1 ����� ���� �������. ����� ��������� ����� ���� ������������ �������� ���������� �� ��������� ������. �� ���������� ������ 1.0 � �������� ������, ��� ����������� ������� ��������� ����� ���� ����������� ���������. ������ ��, ������� ������ ���������� ��������� � ������ ������������ ��������� � �� ��������������� �� ������� ���� ��� �����. �� �� ������ ��������� ������������ ������, ����������� �� ������ ����������.
� �������� �������� ����� ����� ������� ����� � ������ �������, ���������� �����, �� ������� �������� ������ 1.0. ����� �� ������� ��������� � ����� ��� ��������� � �������� �����. ����� �� ������� ���� ������ �� �� ����� ��������� � �������� �����, ���� �������� �� ������ �� �����.
�� ������ ������� �����, ��������� cvs tag -b
. ��������,
���� �� ���������� � �������� � ������� ������:
$ cvs tag -b rel-1-0-patches
��� ��������� �����, ���������� �� ������� ������� ������� �����, � ����������� ���� ����� ��� rel-1-0-patches.
�� ������ ������� ����� ����� ���������: �������� �� �� ����������� � ������ �������� ��� ���������� ������������ ������� ����� �� �����.
��� ����, ����� ������� ����� �� �����������, ��������� ������� checkout � ������ ��������� ������ -r, � ������ ����� � �������� ���������.
$ cvs checkout -r rel-1-0-patches Web-SynDic
���� � ��� ��� ���� ������� �����, �� ������ ����������� �� �� ������ ����� � ������� update -r:
$ cvs update -r rel-1-0-patches Web-SynDic
�������, ��� ������� ����� ���� ��������� �� ��������� ������ ��� �����-������ ������ �����: ��������������� ������� ���������� �� �� ��������� �����. ������� ������� ������� update, update -r ������� ��������� ���������, ��������� ��� � ������������ ����������.
����� �� ���������� ������� ����� � �����-���� ������, ��� ����� ���������� ���������, ���� �� �� ������� ���������. ��� ��������, ��� ���������, ������� ����������� �� ������� �����, ����� ��������� ����� ������� �� �����, �������� ��� ��������� �������� ����� � ������ �����.
����� ������, �� ����� ����� ��������� ������� �����, ����� ������������ ������� status.
�� ���������� ���, ��� ������ ������ ��� ������� ����� �������� (1.7.2 � 1.4.2, ��������������). ����� ����� ���� � �� ��, rel-1-0-patches, � ��� ����� ������������� ��������� �� ����� � ��� �� �����. ������ ���� �������� �� ����� � ������� �����, � ������� ��������� �����. �� ���������������� ������� ����� ������, ��� ����� ���, ��� ���� ������� �����, driver.c ��������� ������ ���������, ��� backend.c.
������ ������� ������� ����� -- ��� �������� ������������ ������������������ �������:
+-----+ +-----+ +-----+ +-----+ +-----+ ! 1.1 !----! 1.2 !----! 1.3 !----! 1.4 !----! 1.5 ! +-----+ +-----+ +-----+ +-----+ +-----+
������ ��, CVS �� ��������� �������� �����������. ������ ������� ����� ���� ���������� �� �����, ��� ������ ����� -- ��������������� ����� ����������. ���������, ��������� �� ����� �����, ����� ����� ���� ������� ����� � � �������� �����.
������ ����� ����� ����� �����, ��������� �� ��������� ����� ���������� �����, ����������� �������. ����� ����� ��������� ����� ���������� ������ ����� � ������ �������, �� ������� ���� ��������� �����. ������ ����� ��������� ��������� �� ����� � ��� �� ������� ��������� �����.
��� ������� �� ����� ����� ������ �������, ������������ ����� ���������� ����������� ������ � ������ �����. ��� ����������� �������� �����.
+-------------+ Branch 1.2.2.3.2 -> ! 1.2.2.3.2.1 ! / +-------------+ / / +---------+ +---------+ +---------+ Branch 1.2.2 -> _! 1.2.2.1 !----! 1.2.2.2 !----! 1.2.2.3 ! / +---------+ +---------+ +---------+ / / +-----+ +-----+ +-----+ +-----+ +-----+ ! 1.1 !----! 1.2 !----! 1.3 !----! 1.4 !----! 1.5 ! <- The main trunk +-----+ +-----+ +-----+ +-----+ +-----+ ! ! ! +---------+ +---------+ +---------+ Branch 1.2.4 -> +---! 1.2.4.1 !----! 1.2.4.2 !----! 1.2.4.3 ! +---------+ +---------+ +---------+
������ �� ��������� ������������ � ������ ������� ����, ��� �������� ������ �����, �� ��� ��� �����������: ����� CVS ������� ����� �����, �� ����� ������ ���������������� ������ �����, ������� � ������. �������, ���� �� ������ ������� ����� �� ������� 6.4, ��� ����� ���������� 6.4.2. ������ �����, ��������������� �� ���� (��������, 6.4.0), ������������ ��� ���������� ���� CVS. ����� 1.1.1 ����� ����������� ��������.
��� ����, ����� �������� ������������� ������� ��������, ������� �������, �� ������ ������� ����� �������.
-lR
] ����� ...
������� ��������, ��� ������������� ����� ��������� �������
cvs edit
����� ��������������� ������. ��� ����,
����� ��������� �� ���� �������������, CVS ������� �������
����� ������ � ������ ������ ��� ������.
���� ����� ������ ���� ��� ��������, CVS ��������
�������� �� ���� �������, ������������ � ��������������� ��������
����������� � ������������� �������� ����� �������� �� �����
�������, ������� ����� � ���������� ��������� � �������; ���
��������� ������������ ������ ��������� ����������� ��� �������
��������. ���������� �������� �������������� ����������, ����
������ �� ����� ���� ��������� ������ -l
. ���� -R
��������� �������� ����������� ���������, ���� � �����
~/.cvsrc ��� ���� ��������� � ������� ����� -l
.
���� ������ ������ ��������, �� ��������� �������������� ������� �������.
-lR
] ����� ...
������� ��������, ��� ��� ���������� �� ����� ���������
����� � ������ ������ ��� ������; ����� �������,
������������ �� ����� �������� ����������� � �������������
������������� cvs edit
� cvs unedit
.
����� � ����� ��������� ������ �������������� ����� ��� ��,
��� � ��� cvs watch on
.
��� ��� ����, �� ������� ������ ���-����, ����������� � ������
������ ��� ������, �� �� �� ������ ������ ����� � ���������������
���. ��� ����, ����� ������� ��� ��������� ��� ������ � ��������
���������, ��� �� ���������� ��������������� ���� ����,
����������� ������� cvs edit
. ��������� ������� ��������
��� ����������, �� ������������ CVS ��� ����������
���� ������ � ������ "��������� ����� �������� �������",
� ��� ��������, � ���� �������, ������ ������� �������� �����.
����������� ��� �������������� ������� �����. CVS ������ ����� ���������� ��� ������ � ������ � ���������� �������������, ������� ����������� � �������������� ������-������ �� ��������� ������.
������� cvs edit
��������� ����� �� ����� ���������
������, ��� � ������� cvs watch add
, � �������������
��������� �������� �� ������� ��� ������������; CVS
��������� ��������, ����� ����� ��������� ������� unedit
��� ������� commit
. ���� ������������ �� ����� ��������
�����������, �� ������ ������� ���� -a none
.
����� � ����� ��������� ������ �������������� ����� ��� ��,
��� � ��� ������� cvs watch
.
������, ����� �� ��������� �������������� ������, �����������
������� cvs commit
, ������� �������� ���� ��������� �
������ �����, �� �������� ������������� ��������, � �������
��������� ������ ��� ������. ���� �� �� ������ ����� ������
�������� ���������, ��� ������ �� ������� ������ ������,
����������� ������� cvs unedit
.
-lR
] files ...
��������� ��� ��������� � ������� ������ files � ��������
�� � ������������ � �������� � �����������. ���� ���-����
�������� ����������� �� ���������� �����-���� ������, �� CVS
������ ��� ����� ���������� ������ ��� ������. CVS
���������� �������������, ������� ��������� ����������� � �������
unedit
.
����� ��������� ������ � ������ ������ �������������� ����� ���
��, ��� ��� ������� cvs watch
.
���� �������� �� ������������, ������� unedit
, ��������,
�� ��������, � ������������ ������ ������� ���� � �� ���������, �
������� �� ��������� � ����������� -- ������� ��� � ������������ cvs update
���
��������� ����� �����. ��������� ���� �������� ��������� �������
unedit
: �������� � ���������� ����� ������ ����� �
���������, ������� ���� �������� � ����������� � ��� ���, ��� ��
� ��������� ��� ��������� ���� ������� �����.
��� ������������� �������� CVS �� ������ ������������
������� cvs edit
� cvs unedit
, ���� ���� CVS
�� ������ ������� ����������� � ��������. ����������� �����
������� ��� ��������� �������� ���������� �����-���� �������
CVS.
-lR
] files ...
������ ������ �������������, ������� ����������� ��������� � files. ���������� ����� ������ � �������� ������ ������� ���������.
����� ��������� ������ � ������ ������ �������������� ��� ��, ���
� � ������� cvs watch
.
-lR
] files ...
������ ������ �������������, ������� � ������� ������ �������� ��� ������� files. ���������� �������� ������ �������������, �����, ����� ������������ ����� ������ � ������, � ����� ������ � ������� ������� �� ���, � ������� ��������� ������ ����.
������ ������ � ����� ��������� ������ �������������� ����� ���
��, ��� � � ������� cvs watch
.