CVS(1) General Commands Manual CVS(1) NAME - cvs - (Concurrent Versions System) SYNOPSIS - cvs [ cvs_options ] cvs_command [ command_options ] [ command_args ] NOTE - cvs . CVS . Cederqvist ( info CVS SEE ALSO ) . . CVS commands - CVS Guide to CVS commands - CVS cvs ( cvs `Invoking CVS' CVS ). Structure - Overall structure of CVS commands - CVS cvs : cvs [ cvs_options ] cvs_command [ command_options ] [ command_args ] cvs cvs. cvs_options cvs . . cvs_command . . cvs_command : cvs -H cvs -v cvs . command_options . command_args . cvs_options command_options . cvs_option . command_option . . . (Exit status) CVS (CVS's exit status) cvs exit status ( ) . . $? . cvs . cvs diff . . cvs diff cvs . ~/.cvsrc (~/.cvsrc) ~/.cvsrc (Default options and the ~/.cvsrc file) command_options (alias) . ( .cvsrc ) diff context diff unidiff . ~/.cvsrc cvs_commands cvs . ~/.cvsrc . cvs_command . ( ) . ( checkout co) . ~/.cvsrc : log -N diff -uN rdiff -u update -Pd checkout -P release -d cvs checkout foo cvs co foo -P . cvs diff foobar unidiff . cvs diff -c foobar context diff . "" diff "" cvs -f diff foobar . cvs ( `Global options' CVS ). .cvsrc cvs -z6 cvs . (Global options) cvs_options ( cvs_command ) : --allow-root=rootdir cvsroot . `Password authentication server' CVS . -a . cvs . GSSAPI ( `GSSAPI authenticated' CVS ). tcp . . -b bindir cvs 1.9.18 rcs bindir . cvs rcs . -T tempdir tempdir . $TMPDIR . . ( / -T -T .) -d cvs_root_directory cvs_root_directory . $CVSROOT . `Repository' CVS . -e editor editor (revision log) . $CVSEDITOR $EDITOR . `Committing your changes' CVS . -f ~/.cvsrc . (non-orthogonality) cvs . -N cvs log ( ) . log ~/.cvsrc -N -f . -H --help cvs_command ( ). cvs -H cvs . -n . cvs_command . cvs -n . cvs . -Q . -q ( ) . -r . $CVSREAD ( `Environment variables' CVS ). (watches) ( `Watches' CVS ). -s variable=value ( `Variables' CVS ). -t cvs . -n . -v --version cvs . -w - . $CVSREAD . - $CVSREAD -r . -x . cvs . GSSAPI ( `GSSAPI authenticated' CVS ) Kerberos ( `Kerberos authenticated' CVS ) . . cvs --enable-encryption . -z gzip-level . 1 ( ) 9 ( ) 0 () . cvs . Common options - Common command options - command_options cvs . cvs_command . . . ( cvs ). history . -D date_spec date_spec . date_spec . (sticky) -D cvs ( / `Sticky tags' CVS ). -D annotate checkout diff export history rdiff rtag update . ( history `history options' CVS ). cvs . ISO8601 ( ) ( RFC822 RFC1123) . ISO8601 : 1972-09-24 1972-09-24 20:05 ISO8601 cvs :-). cvs . : 24 Sep 1972 20:05 24 Sep . . cvs . cvs . month/day/year . 1/4/96 . -D . -D : $ cvs diff -D "1 hour ago" cvs.texinfo -f cvs ( ) . -f . ( ). -f ( ). cvs . -f : annotate checkout export rdiff rtag update. : commit remove -f . `commit options' CVS `Removing files' CVS . -k kflag . kflag `Keyword substitution' CVS . kflag sticky () checkout update cvs kflag update . -k add checkout diff rdiff import update . -l . : annotate checkout commit diff edit editors export log rdiff remove rtag status tag unedit update watch watchers. -m message message (log) . : add commit import. -n (tag program) . ( ( `modules' CVS ) ). cvs -n cvs ! checkout export rtag. -P . `Removing directories' CVS . -p (pipe) . checkout update. -R . . : annotate checkout commit diff edit editors export rdiff remove rtag status tag unedit update watch watchers. -r tag tag head. tag rtag : HEAD BASE . checkout update sticky () : cvs update ( / `Sticky tags' CVS ). `Tags' CVS (branch) `Branching and merging' CVS . . -q -r rcs . cvs -r cvs ! -r annotate checkout commit diff history export rdiff rtag update . -W () . . .cvswrappers . : import update. (add) (Add files and directories to the repository) o (Synopsis): add [-k rcs-kflag] [-m message] files... o (Requires): (repository) (working directory). o (Changes): (repository) (working directory). add cvs . add . . commit . add . commit . add . add (add options) add ( `Common options' CVS ): -k kflag kflag. `Keyword substitution' CVS . (sticky) kflag . status . status `Invoking CVS' CVS . -m message message . add (add examples) (Adding a directory) $ mkdir doc $ cvs add doc Directory /path/to/repository/doc added to the repository (Adding a file) $ >TODO $ cvs add TODO cvs add: scheduling file `TODO' for addition cvs add: use 'cvs commit' to add this file permanently remove (Undoing a remove command) $ rm -f makefile $ cvs remove makefile cvs remove: scheduling `makefile' for removal cvs remove: use 'cvs commit' to remove this file permanently $ cvs add makefile U makefile cvs add: makefile, version 1.2, resurrected (admin) (Administration) o (Requires): (repository) (working directory). o (Changes): (repository). o (Synonym): rcs cvs . cvs . . . cvsadmin cvs admin ( cvs admin -k ). / cvs . cvs admin . NT cvsadmin cvs admin . admin options - admin cvs . cvs ! -Aoldfile cvs . oldfile rcs . -alogins cvs . logins rcs . -b[rev] rev . cvs ( `Sticky tags' CVS ) . cvs admin -b : ( `Reverting local changes' CVS ). -b . -cstring (comment leader) string . cvs rcs 5.7 . . `Keyword substitution' CVS . -e[logins] cvs . logins RCS . logins . -e . -I . / cvs cvs . -i cvs . rcs . cvs cvs add ( `Adding files' CVS ). -ksubst subst . `Keyword substitution' CVS . -k cvs update cvs export cvs checkout . -l[rev] rev . . rev . -l . rcslock.pl contrib cvs ( ) . ( README contrib ). ( ) . -L . RCS (checkin) . cvs -l . -mrev:msg rev msg . -Nname[:[rev]] -n name . `Magic branch numbers' CVS . -nname[:[rev]] name rev . cvs tag cvs rtag . : rev name . rev . rev . . : rev (trunk) . cvs admin -nname: name RCS cvs admin -nname:$ name . -orange range () . ( rev1:rev2 ). . -- ! ( ) cvs . . range : rev1::rev2 rev1 rev2 cvs rev1 rev2 . -o 1.3::1.5 1.3 1.5 1.3 1.5 1.4 1.3 1.4 . : -o 1.3::1.4 -o 1.3::1.3 . ::rev rev rev. rev . -o ::1.3.2.6 1.3.2.1 1.3.2.5 1.3 1.3.2.6 . rev:: rev rev. rev (head) . rev rev. -o 1.3 -o 1.2::1.4 . rev1:rev2 rev1 rev2 . rev1 rev2 . cvs admin -oR_1_01:R_1_02 . . R_1_02 . ! R_1_02 R_1_03 R_1_02 R_1_03 . R_1_02 R_1_03 ( ) ! rev1::rev2 . :rev rev rev . rev: rev rev rev. . :: cvs . cvs tag -d cvs admin -o . :: cvs . cvs :: . cvs rev . `Magic branch numbers' CVS . (outdate) (check out) . (check in) . (commit) ( `Merging two revisions' CVS ). -q . -sstate[:rev] cvs. (state) rev state . rev . rev . state . Exp ( ) Stab ( ) Rel ( ) . Exp . cvs log ( `log' CVS ) $Log$ $State$ ( `Keyword substitution' CVS ) . cvs dead ( `Attic' CVS ) dead cvs remove cvs add ( `Adding and removing' CVS ) cvs admin -s. -t[file] cvs. file RCS . file - . cvs log ( `log' CVS ). -t . file (EOF) . . -I . -t-string -tfile. string rcs . -t . -U (non-strict). (checkin) . cvs -l . -u[rev] cvs -l . rev. . rev . . commit ( `Getting Notified' CVS ). -u . -Vn cvs rcs n rcs . -xsuffixes cvs rcs . cvs rcs cvs ,v . annotate - (annotate) What revision modified each line of a file? - o : annotate [options] files... o : (repository). o : blame o : . files (head revision) (trunk) . annotate options - annotate annotate ( `Common options' CVS ): -l . -R . -f (head revision) /. -F (). -r revision / . -D date . annotate example - annotate : $ cvs annotate ssfile Annotations for ssfile *************** 1.1 (mary 27-Mar-96): ssfile line 1 1.2 (joe 28-Mar-96): ssfile line 2 ssfile . ssfile line 1 mary (check in) . joe ssfile line 2 ssfile line 1 . cvs diff ( `diff' CVS ). cvs annotate `Invoking CVS' CVS . `Common options' CVS . checkout - (checkout) Check out sources for editing - o : checkout [options] modules... o : (repository). o : (working directory). o : co, get modules. cvs checkout . modules . modules . `modules' CVS . checkout . ( ) (commit) . checkout . checkout . (module alias) checkout ( -Q ). checkout - -r cvs ( `Global options' CVS ) CVSREAD ( `Environment variables' CVS ) (watch) ( `Watches' CVS ). checkout checkout . -d update . checkout update . checkout ( checkout ) checkout . checkout `update output' CVS . checkout (checkout options) checkout ( `Common options' CVS ): -D date date . -P . / `Sticky tags' CVS . -f -D date -r tag . ( ). -k kflag kflag. `Keyword substitution' CVS . kflag . status . status `Invoking CVS' CVS . -l . -n checkout ( -o modules `modules' CVS ). -P . `Moving directories' CVS . -p (pipe) . -R . . -r tag tag. -P . / `Sticky tags' CVS . checkout : -A -k . -k . / `Sticky tags' CVS . -c module . -d dir dir . mkdir dir; cd dir checkout -d . . . cvs ``'' . foo bar.c cvs co -d dir foo dir bar.c . bar baz quux.c cvs co -d dir bar/baz dir quux.c . -N . cvs co -N -d dir foo dir/foo bar.c cvs co -N -d dir bar/baz dir/bar/baz quux.c . -j tag -j -j j . -j (ancestor) -j . -j . -j . (:) : -jSymbolic_Tag:Date_Specifier. `Branching and merging' CVS . -N -d dir . cvs checkout ``'' . -d . -s -c . -s modules `modules' CVS . checkout examples - checkout tc: $ cvs checkout tc tc : $ cvs checkout -D yesterday tc commit - (commit) Check files into the repository - o : commit [-lRf] [-m 'log_message' | -F file] [-r revision] [files...] o : . o : . o : ci commit . (commit) . commit . ( -R ) -l commit . commit update ( `update' CVS ). commit update . (log message) ( `modules' CVS `loginfo' CVS ) rcs . log `log' CVS . -m message -F file . commit options - commit commit ( `Common options' CVS ): -l . -R . . -r revision revision. revision (main trunk) ( `Assigning revisions' CVS ). commit . commit : -F file file . -f -f `Common options' CVS . cvs . file 1.7 : $ cvs commit -f file $ cvs commit -r 1.8 file -f ( -l ). cvs -f -R . -m message message . commit examples - commit Committing to a branch - -r ( ) (commit) . -b rtag tag ( `Branching and merging' CVS ). checkout update . commit . (patch) 1.2 2.0 : $ cvs rtag -b -r FCS1_2 FCS1_2_Patch product_module $ cvs checkout -r FCS1_2_Patch product_module $ cd product_module [[ hack away ]] $ cvs commit -r (sticky) . Creating the branch after editing - (checkout) . . (checkout) cvs . : [[ hacked sources are present ]] $ cvs tag -b EXPR1 $ cvs update -r EXPR1 $ cvs commit update -r EXPR1 (sticky) . update . commit -r . : [[ hacked sources are present ]] $ cvs tag -b EXPR1 $ cvs commit -r EXPR1 -r EXPR1 . -r EXPR1 (commit) (main trunk) . : $ cvs checkout -r EXPR1 whatever_module diff - (diff) Show differences between revisions - o (Synopsis): diff [-lR] [-k kflag] [format_options] [[-r rev1 | -D date1] [-r rev2 | -D date2]] [files...] o (Requires): . o (Changes): . diff . . . . (exit status) diff cvs `Exit status' CVS . diff options - diff diff ( `Common options' CVS ): -D date date . -r . -k kflag kflag. `Keyword substitution' CVS . -l . -R . . -r tag tag. -r . -r . -r . -r ( ). -r -D date ( ) . . GNU diff . - --. -lines lines ( ) . -c -u . . patch . -a . -b . -B . --binary (). --brief . -c . -C lines --context[=lines] lines ( ) lines . patch . --changed-group-format=format format if-then-else. `Line group formats' CVS . -d . diff ( ) . -e --ed ed. --expand-tabs . -f ed . -F regexp context unified (hunk) regexp . --forward-ed ed . -H (heuristics) . --horizon-lines=lines lines lines . -i . -I regexp regexp . --ifdef=name if-then- else name. --ignore-all-space . --ignore-blank-lines . --ignore-case . --ignore-matching-lines=regexp regexp . --ignore-space-change . --initial-tab . . -L label label . --label=label label . --left-column (side by side) . --line-format=format format if-then-else . `Line formats' CVS . --minimal . diff ( ). -n RCS -f . -N --new-file . --new-group-format=format format if-then-else . `Line group formats' CVS . --new-line-format=format format if-then-else . `Line formats' CVS . --old-group-format=format format if-then-else . `Line group formats' CVS . --old-line-format=format format if-then-else . `Line formats' CVS . -p C . --rcs RCS -f . --report-identical-files -s . --show-c-function C . --show-function-line=regexp (hunk) regexp . --side-by-side (side by side) . --speed-large-files (heuristics) . --suppress-common-lines . -t . -T . . --text . -u (unified) . --unchanged-group-format=format format if-then-else . `Line group formats' CVS . --unchanged-line-format=format format if-then-else . `Line formats' CVS . -U lines --unified[=lines] lines ( ) lines . patch . -w (white space) . -W columns --width=columns (side by side) columns . -y (side by side) . Line group formats - if-then-else . . TeX myfile \begin{em}-\end{em} \begin{bf}-\end{bf} . cvs diff \ --old-group-format='\begin{em} %<\end{em} ' \ --new-group-format='\begin{bf} %>\end{bf} ' \ myfile () . cvs diff \ --old-group-format='\begin{em} %<\end{em} ' \ --new-group-format='\begin{bf} %>\end{bf} ' \ --unchanged-group-format='%=' \ --changed-group-format='\begin{em} %<\end{em} \begin{bf} %>\end{bf} ' \ myfile diff << >> . cvs diff \ --unchanged-group-format='' \ --old-group-format='-------- %dn line%(n=1?:s) deleted at %df: %<' \ --new-group-format='-------- %dN line%(N=1?:s) added after %de: %>' \ --changed-group-format='-------- %dn line%(n=1?:s) changed at %df: %<-------- to: %>' \ myfile . . format . --old-group-format=format (hunks) . . --new-group-format=format . . --changed-group-format=format . . --unchanged-group-format=format . . % . %< . ( `Line formats' CVS ). %> . . %= . . %% % . %c'C' C C . C . %c':' then if-then-else . %c'\O' O (octal) O . %c'\0' (null) . Fn F printf n n F . e . f e + 1. l . m l + 1 . n l - f + 1 . E, F, L, M, N . printf %d %o %x %X . % : - . %5dN "%5d" printf . (A=B?T:E) A B T E. A B . T A B E . %(N=0?no:%dN) line%(N=1?:s) no lines N ( ) 0 1 line N 1 %dN lines . Line formats - (if-then- else) . . - | . . cvs diff \ --old-line-format='-%l ' \ --new-line-format='|%l ' \ --unchanged-line-format=' %l ' \ myfile . format . --old-line-format=format . --new-line-format=format . --unchanged-line-format=format . --line-format=format . % . %l (newline) ( ). . %L ( ). . %% % . %c'C' C C . C . %c':' (:) . %c'\O' O O . %c'\0' (null) . Fn F printf F . %.5dn "%.5d" printf . printf `Line group formats' CVS . %l . (tab) %l %L (tab stop) ( %l %L) -t --expand-tabs . . diff . diff . cvs diff \ --old-line-format='< %l ' \ --new-line-format='> %l ' \ --old-group-format='%df%(f=l?:,%dl)d%dE %<' \ --new-group-format='%dea%dF%(F=L?:,%dL) %>' \ --changed-group-format='%df%(f=l?:,%dl)c%dF%(F=L?:,%dL) %<-- %>' \ --unchanged-group-format='' \ myfile diff examples - diff Unidiff ( -u) 1.14 1.19 backend.c . -kk . $ cvs diff -kk -u -r 1.14 -r 1.19 backend.c EXPR1 RELEASE_1_0 . : $ cvs diff -r RELEASE_1_0 -r EXPR1 context diff (release) : $ cvs diff -c -r RELEASE_1_0 -r RELEASE_1_1 > diffs (ChangeLog) (commit) ChangeLog . . $ cvs diff -u | less export - (export) Export sources from CVS, similar to checkout - CVS checkout o : export [-flNnR] [-r rev|-D date] [-k subst] [-d dir] module... o : (repository). o : (current directory). checkout cvs . export . ( -D -r) ( ). -kv cvs export . import . () . -kv ident ( rcs -- ident(1) ) . ident -kv . export options - export export ( `Common options' CVS ): -D date date . -f ( ). -l . -n (checkout) . -R . . -r tag tag. ( checkout export ) : -d dir dir . cvs `checkout options' CVS . -k subst ( `Substitution modes' CVS ). -N -d dir . cvs `checkout options' CVS . history - (history) Show status of files and users - o : history [-report] [-flags] [-options args] [files...] o : $CVSROOT/CVSROOT/history o : . cvs checkout commit rtag update release . history . (Logging) $CVSROOT/CVSROOT/history . history -f -l -n -p cvs ( `Common options' CVS ). history options - history ( -report ) : -c commit ( ). -e ( ). -x . -e cvs -x . -m module . ( -m .) -o (checked-out). . -T . -x type type cvs. . : F release O checkout E export T rtag update : C ( ). G . U . P . W ( ). commit : A . M . R . -flags : -a ( history ). -l . -w history . -options args : -b str str . -D date date . -D date date . -f file ( -f ). . -n module ( -n ). -p repository ( -p ). -r rev rev rcs . rcs . -t tag tag . -r rcs . -u name name. -z timezone UTC. import - (import) Import sources into CVS, using vendor branches - CVS (vendor branches) o : import [-options] repository vendortag releasetag... o : (Repository) (source distribution directory). o : (repository). import ( ) . . `Tracking sources' CVS . repository ( ) cvs import . import ( import ) import checkout -j . cvs ( `cvsignore' CVS ) I ( `import output' CVS ). $CVSROOT/CVSROOT/cvswrappers / . `Wrappers' CVS . 1.1.1 . 1.1.1.1 1.1.1.2 . . repository . vendortag ( 1.1.1). releasetag import . releasetag . import . cvs (import) (checkout) ( `Getting the source' CVS ). import options - import import ( `Common options' CVS ): -m message message (log) . . -b branch `Multiple vendor branches' CVS . -d (import) . -k subst . import . -k `Substitution modes' CVS . -I name import . . ( ) `-I !' . name .cvsignore . `cvsignore' CVS . -W spec import () . . spec .cvswrappers . `Wrappers' CVS . import output - import import : U file ( ). N file . C file . I file ( `cvsignore' CVS ). L file (symbolic link) cvs import . . ( modules checkout update `modules' CVS .) import examples - import `Tracking sources' CVS `From files' CVS . log - (log) Print out log information for files - o : log [options] [files...] o : (repository) (working directory). o : . (log) . log rcs rlog . cvs . rcs head ( trunk) () . / (log message) . (UTC) . ( cvs ). log -R cvs ( `Common options' CVS ). log options - log log . . (-b -d -r -s -w) log (-h -R -t) -S Attic . -b trunk . -d dates / (checkin) - (semicolon). -D cvs ( `Common options' CVS ). : d1d1 d1 d2 . d . d< >d d . d d . > < = (exclusive) (inclusive) . - (;) . -h rcs head (access list) . -l . ( ). -N . more . -n . .cvsrc log -N . -R rcs. -rrevisions revisions . : rev1:rev2 rev1 rev2 ( ). rev1::rev2 rev1. :rev ::rev rev. rev: rev rev . rev:: rev rev . branch . branch1:branch2 branch1::branch2 . branch. branch. -r ( trunk) . -r . -S . -s states (state) states . cvs Exp dead . `admin options' CVS . -t -h . -wlogins logins . logins . -w . log -d -s -w -b -r . log examples - log . rdiff - (rdiff) 'patch' format diffs between releases - 'patch' o : rdiff [-flags] [-V vn] [-r t|-D d [-r t2|-D d2]] modules... o : (repository). o : . o : patch (Larry Wall format patch(1)) patch . ( cvs (checkout) .) diff . ( -r -D) . (head) rcs . -p patch patch . rdiff options - rdiff rdiff ( `Common options' CVS ): -D date date . -f ( ). -k kflag kflag. `Keyword substitution' CVS . -l . -R . . -r tag tag. : -c context diff. . -s (patch). . . . -t diff . . -u unidiff (context diffs). patch unidiff -u . -V vn vn rcs ( 5 rcs ). . cvs 5 rcs . rdiff examples - rdiff foo@example.net 1.2 1.4 tc . cvs : $ cvs rdiff -c -r FOO1_2 -r FOO1_4 tc | \ > Mail -s 'The patches you asked for' foo@example.net 1.3 R_1_3fix . R_1_3_1 1.3.1 . . : $ cvs patch -s -r R_1_3_1 -r R_1_3fix module-name cvs rdiff: Diffing module-name File ChangeLog,v changed from revision 1.52.2.5 to 1.52.2.6 File foo.c,v changed from revision 1.52.2.3 to 1.52.2.4 File bar.h,v changed from revision 1.29.2.1 to 1.2 release - (release) Indicate that a Module is no longer in use - o : release [-d] directories... o : (working directory). o : (working directory, history log). cvs checkout . cvs . cvs ( `history file' CVS ) (checkout) . cvs release . (uncommitted) cvs . cvs release ( ) cvs . release options - release release : -d . . : release . ( add `Adding files' CVS ) -- ! release output - release release . U file P file (U P ). A file (commit) . . R file . `commit' CVS . M file . . ? file file cvs ( -I `cvsignore' CVS ). . release examples - release tc (release) . $ cd .. # cvs release # . $ cvs release -d tc You have [0] altered files in this repository. Are you sure you want to release (and delete) directory `tc': y $ remove - (remove) Remove files from active use - o : remove [-flR] [files...] o : . o : . remove . remove . . commit . remove . cvs . cvs remove `add' CVS . remove options - remove remove ( `Common options' CVS ): -l . `Recursive behavior' CVS . -R . `Recursive behavior' CVS . : -f -f `Common options' CVS . . -f . remove examples - remove Removing a file - $ cvs remove remove.me cvs remove: file `remove.me' still in working directory cvs remove: 1 file exists; remove it first $ rm -f remove.me $ cvs remove remove.me cvs remove: scheduling `remove.me' for removal cvs remove: use 'cvs commit' to remove this file permanently $ ls remove.it remove.it $ cvs remove -f remove.it cvs remove: scheduling `remove.it' for removal cvs remove: use 'cvs commit' to remove this file permanently Removing entire directories - $ tree -d a a |-- CVS `-- b `-- CVS 3 directories $ cvs remove -f a cvs remove: Removing a cvs remove: Removing a/b cvs remove: scheduling `a/b/c' for removal cvs remove: use 'cvs commit' to remove this file permanently update - (update) Bring work tree in sync with repository - o update [-ACdflPpR] [-I name] [-j rev [-j rev]] [-k kflag] [-r tag|-D date] [-W spec] files... o : . o : . checkout . update checkout update . update options - update update ( `Common options' CVS ): -D date date . (sticky) -P . / `Sticky tags' CVS . -f -D date -r tag . ( ). -k kflag kflag. `Keyword substitution' CVS . kflag . status . status `Invoking CVS' CVS . -l . `Recursive behavior' CVS . -P . `Moving directories' CVS . -p . -R (). `Recursive behavior' CVS . -r rev / rev. -P . / `Sticky tags' CVS . update . -A -k . -k . / `Sticky tags' CVS . -C ( .#file.revision ). -d . update . checkout . ( ) -d . -I name name ( ) . -I . -I ! . cvs `cvsignore' CVS . -Wspec . . spec .cvswrappers . `Wrappers' CVS . -jrevision -j -j j . -j -j . -j. -j tagname -j branchname . `Merging adds and removals' CVS . -j . (:) : -jSymbolic_Tag:Date_Specifier. `Branching and merging' CVS . update output - update update checkout : U file . . P file U cvs (patch) . U . A file commit . (commit) . R file commit . (commit) . M file . M : . cvs ( update ) . update . C file file (conflict) . file ( ) .#file.revision revision . `Conflicts example' CVS . ( .# . .) vms .# __ . ? file file cvs ( -I `cvsignore' CVS ). AUTHORS - Dick Grune cvs volume6 comp.sources.unix . cvs . Brian Berliner cvs . Jeff Polk cvs (vendor branch) checkin(1) ( cvs import). Larry Jones, Derek R. Price, and Mark D. Baushke cvs . . SEE ALSO - CVS Version Management with CVS Per Cederqvist . info CVS cvs.pdf ( ) cvs.ps () cvs.texinfo ( Texinfo) cvs.html . CVS CVS CVS : http://cvs.nongnu.org ci(1), co(1), cvs(5), cvsbug(8), diff(1), grep(1), patch(1), rcs(1), rcsdiff(1), rcsmerge(1), rlog(1). CVS(1)