1CVSUTILS(1)                 General Commands Manual                CVSUTILS(1)
2
3
4

NAME

6       cvsutils - CVS utilities for use in working directories
7

SYNOPSIS

9       cvsu [options]
10       cvsco  [ options ]
11       cvsdiscard  [ options ]
12       cvspurge  [ options ]
13       cvstrim  [ options ]
14       cvschroot  [ options ]
15       cvsdo  [ options ]
16

DESCRIPTION

18       The  idea  of  cvsutils  is to facilitate working with the files in the
19       working directory of a developer using CVS  (Concurrent  Versions  Sys‐
20       tem).
21
22       From  the  point  of  view  of CVS, working directories have low value,
23       since they can easily be recreated  using  the  cvs  checkout  command.
24       Also  the  cvs  update  command will show the status of the files, i.e.
25       whether they have been modified, added or removed.
26
27       CVS in it's current state is a client-server system that does  most  of
28       its  work  on the server side. CVS provides only few (if any) means for
29       managing the working directory without communicating with the server.
30
31       There are, however, several reasons why such means are necessary:
32
33       *      There is enough information on the client side  to  create  fast
34              tools for sorting and purging the working directory without con‐
35              tacting the CVS server.
36
37       *      Checking out a big module over a slow line  can  take  too  much
38              time.
39
40       *      There should be support for disconnected operations.
41
42       *      CVS  poses  certain unnecessary restrictions on read-only users,
43              e.g.  cvs add command doesn't work for them.
44

CVSU

46       cvsu is "cvs update offline". It lists the files found in  the  current
47       directory (or in the directories which you specify). Following is taken
48       into account:
49
50       *      Attributes of the file.
51
52       *      Information about the file in CVS/Entries.
53
54       *      Timestamp of the  file  compared  to  the  timestamp  stored  in
55              CVS/Entries.
56
57       Run  cvsu --help to see supported command line options. The options can
58       be abbreviated.  This functionality is provided by Perl, and  can  vary
59       from one machine to another.
60

CVSCO

62       cvsco is a "cruel checkout". In other words, it removes results of com‐
63       pilation and discards local changes. It deletes all  the  files  except
64       listed  unmodified  ones  and  checks  out everything which seems to be
65       missing.  Please note, that cvsco doesn't update  files  which  haven't
66       been modified locally. It only reloads missing files and files which it
67       erases.
68

CVSDISCARD

70       cvsdiscard is "discard my changes". In other words, it  discards  local
71       changes  but  keeps results of compilation. It works like cvsco, but it
72       only deletes files which are likely to cause merge conflicts.
73

CVSPURGE

75       cvspurge leaves all files known to CVS, but removes the  rest.   Unlike
76       cvsco,  it  doesn't  remove  local changes.  It is useful to test local
77       changes in the otherwise clean source tree.
78

CVSTRIM

80       cvstrim removes files and directories unknown to CVS. Files  listed  in
81       .cvsignore  are  not  removed. The idea is to remove the files that are
82       not resulted from the normal build process -  backups,  coredumps  etc.
83       cvstrim relies on .cvsignore files being correct. Note that the backups
84       for modified files are removed.
85

CVSCHROOT

87       cvschroot makes it possible to change CVS/Root in all subdirectories to
88       the  given  value. Currently the only argument accepted is the new CVS‐
89       ROOT value.  Old-style CVS/Repository files that contain the full  path
90       to  the  repository  are  updated  to  reflect  the  change.  New-style
91       CVS/Repository don't need to be changed. If  the  environment  variable
92       CVSROOT  is  defined,  it  overrides the contents of CVS/Root. In other
93       words, it is treated as the old CVS root.
94

CVSDO

96       cvsdo simulates some of the CVS commands  (currently  add,  remove  and
97       diff)  without  any access to the CVS server. Using cvsdo add and cvsdo
98       remove allows you to create diffs with cvs diff -N, and all removed and
99       added  files  will appear in the diff correctly, as if you had used cvs
100       add and cvs remove respectively.
101
102       cvsdo diff tries to locate the backup copies of the modified files.  If
103       they  can  be  found,  they are compared with the current version using
104       diff.  Only those backup copies are used  that  have  the  modification
105       date equal the date listed in CVS/Entries for the modified file.  cvsdo
106       diff patches the diff output to make it more robust to apply. An excep‐
107       tion  is  made  for files named "ChangeLog" - in this case diff will be
108       instructed to omit all context lines, so that the patch can be  applied
109       even  if  other  changes  have  been written to the ChangeLog. Also the
110       added files are handled properly. The header  of  the  diff  output  is
111       patched in such way that at least GNU patch will create a new file when
112       the resulting patch is applied and remove that file when the  patch  is
113       reverted.
114

BUGS

116       Please report any bugs you find to Pavel Roskin <proski@gnu.org>.
117

LICENCE

119       cvsutils is covered by the GNU General Public License (GPL).
120

SEE ALSO

122       cvs(1), cvs2cl(1).
123

AUTHOR

125       Pavel Roskin <proski@gnu.org>
126
127       This  manual  page was written by Uwe Hermann <uwe@debian.org>, for the
128       Debian GNU/Linux system (but may be used by others).
129
130
131
132                               February 27, 2002                   CVSUTILS(1)
Impressum