A CVS repository
consists of directories under $CVSROOT, plus the $CVSROOT/CVSROOT
directory of administrative files. To facilitate browsing, the
CVSROOT/modules file can be
populated with a nested listing of the directory structure, possibly
creating something like the diagram at right in the TkCVS Module Browser.

cvs status | grep '^File' ![]() gives this output: File: app.c Status: Up-to-date |
cvs
-n -q update ![]() gives the short form: M cleanup_tst U dofile M litho.in U setup_tst ? litho.transcript ? xor.transcript ? xor_result.oas |
In TkCVS, it looks like this:![]() |
cvs status | grep '^File'
File: app.c Status: Up-to-date |
cvs -n -q update
M cleanup_tst |
![]() |
<<<<<<< litho.inUnless you simply want to abandon your changes (cvs update -C litho.in
aspect 4.0
siteinfo AERIAL -num 8
=======
siteinfo AERIAL -num 10
>>>>>>> 1.2
)
you must edit the file and
resolve the conflict manually. An easy way to do it is with
tkdiff:


ImportantCVS helps you checkpoint revisions, but the best policy to head off problems is old-fashioned communication. If you check in changes to a suite you know someone else also works on, it's common courtesy to inform them when you make substantial changes. That's especially important if you add or remove directories, because the other person won't be alerted to that by CVS. You'll have to notify them that they should docvs update -d -P ![]() to get the new directories (-d) and remove the obsolete ones (-P). |
For this tutorial,
I'm assuming that new files are added on the trunk. To create a branch
from the trunk, go to your trunk area and make sure
it's up-to-date. CVS will not allow you to create the branch if
it isn't. It may not be obvious from the cvs status commands that
directories have been added or removed. You can update by doing
A branch marker is a
special kind of tag. The command to
create a branch is
To
check out the branch version, you use the -r option of cvs checkout to
specify the branch tag. Supposing you want the calibre/TDopc
module as in the example:
First, notice that
you always merge from
somewhere else, to
where you are. To merge, you use the cvs update command with the
-j (join) option. Since we are merging from the latest
(head) revision on the trunk, we specify HEAD as our merge-from branch: