1*a7bff744Sjmc.\" $OpenBSD: cvs.5,v 1.1 2007/04/14 13:34:44 jmc Exp $ 2*a7bff744Sjmc.\" 3*a7bff744Sjmc.\" Copyright (c) 2004 Jean-Francois Brousseau <jfb@openbsd.org> 4*a7bff744Sjmc.\" Copyright (c) 2004-2007 Xavier Santolaria <xsa@openbsd.org> 5*a7bff744Sjmc.\" All rights reserved. 6*a7bff744Sjmc.\" 7*a7bff744Sjmc.\" Redistribution and use in source and binary forms, with or without 8*a7bff744Sjmc.\" modification, are permitted provided that the following conditions 9*a7bff744Sjmc.\" are met: 10*a7bff744Sjmc.\" 11*a7bff744Sjmc.\" 1. Redistributions of source code must retain the above copyright 12*a7bff744Sjmc.\" notice, this list of conditions and the following disclaimer. 13*a7bff744Sjmc.\" 2. The name of the author may not be used to endorse or promote products 14*a7bff744Sjmc.\" derived from this software without specific prior written permission. 15*a7bff744Sjmc.\" 16*a7bff744Sjmc.\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, 17*a7bff744Sjmc.\" INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY 18*a7bff744Sjmc.\" AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL 19*a7bff744Sjmc.\" THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 20*a7bff744Sjmc.\" EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 21*a7bff744Sjmc.\" PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 22*a7bff744Sjmc.\" OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 23*a7bff744Sjmc.\" WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 24*a7bff744Sjmc.\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF 25*a7bff744Sjmc.\" ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 26*a7bff744Sjmc.\" 27*a7bff744Sjmc.Dd April 13, 2007 28*a7bff744Sjmc.Dt CVS 5 29*a7bff744Sjmc.Os 30*a7bff744Sjmc.Sh NAME 31*a7bff744Sjmc.Nm cvs 32*a7bff744Sjmc.Nd OpenCVS files format 33*a7bff744Sjmc.Sh DESCRIPTION 34*a7bff744SjmcThis manual page documents the various support files for 35*a7bff744Sjmc.Xr cvs 1 36*a7bff744Sjmcand the format of those files. 37*a7bff744Sjmc.Pp 38*a7bff744SjmcThe location of a module's files are known as its 39*a7bff744Sjmc.Dv CVSROOT . 40*a7bff744SjmcThe files within CVSROOT are as follows: 41*a7bff744Sjmc.Bl -tag -width Ds 42*a7bff744Sjmc.It Pa $CVSROOT/CVSROOT 43*a7bff744SjmcDirectory containing repository administrative files. 44*a7bff744Sjmc.It Pa $CVSROOT/CVSROOT/config 45*a7bff744SjmcFile containing various configuration options. 46*a7bff744SjmcThe format of each line is as follows: 47*a7bff744Sjmc.Pp 48*a7bff744Sjmc.Dl keyword=value 49*a7bff744Sjmc.Pp 50*a7bff744SjmcExtraneous spaces or tabs are not permitted. 51*a7bff744SjmcA line beginning with a hash character 52*a7bff744Sjmc.Pq Sq # 53*a7bff744Sjmcis considered a comment and ignored. 54*a7bff744Sjmc.Pp 55*a7bff744SjmcThe following options are available: 56*a7bff744Sjmc.Pp 57*a7bff744Sjmc.Bl -tag -width "dlimit=XvalueXXX" -offset indent -compact 58*a7bff744Sjmc.It dlimit='value' 59*a7bff744SjmcSet the process data size limit. 60*a7bff744Sjmc.It tag='value' 61*a7bff744SjmcSet the name of a local tag to use in addition to Id. 62*a7bff744Sjmc.It umask='value' 63*a7bff744SjmcSet the default umask to use when creating files and directories. 64*a7bff744Sjmc.El 65*a7bff744Sjmc.It Pa $CVSROOT/CVSROOT/history 66*a7bff744SjmcFile containing reports of 67*a7bff744Sjmc.Ic checkout , 68*a7bff744Sjmc.Ic commit , 69*a7bff744Sjmc.Ic export , 70*a7bff744Sjmc.Ic release , 71*a7bff744Sjmc.Ic rtag , 72*a7bff744Sjmcand 73*a7bff744Sjmc.Ic update 74*a7bff744Sjmccommands that have been issued. 75*a7bff744SjmcBy default, the 76*a7bff744Sjmc.Ic init 77*a7bff744Sjmccommand creates the 78*a7bff744Sjmc.Pa history 79*a7bff744Sjmcfile. 80*a7bff744SjmcTo disable history logging, the 81*a7bff744Sjmc.Pa history 82*a7bff744Sjmcfile should be removed manually. 83*a7bff744SjmcThe 84*a7bff744Sjmc.Ic history 85*a7bff744Sjmccommand shows these reports according to several criteria. 86*a7bff744Sjmc.It Pa $CVSROOT/CVSROOT/loginfo 87*a7bff744SjmcFile containing associations between modules and handlers for 88*a7bff744Sjmcpost-commit logging. 89*a7bff744Sjmc.El 90*a7bff744Sjmc.Pp 91*a7bff744SjmcEach directory that is managed by 92*a7bff744Sjmc.Nm 93*a7bff744Sjmccontains a 94*a7bff744Sjmc.Pa CVS 95*a7bff744Sjmcdirectory. 96*a7bff744SjmcThis directory is used by various 97*a7bff744Sjmc.Nm 98*a7bff744Sjmccommands to record the status of files in the current working directory. 99*a7bff744SjmcThese files should not be modified manually by the user but by the 100*a7bff744Sjmc.Nm 101*a7bff744Sjmccommands instead. 102*a7bff744SjmcFiles that are always stored in every 103*a7bff744Sjmc.Pa CVS 104*a7bff744Sjmcdirectory are as follows: 105*a7bff744Sjmc.Bl -tag -width Ds 106*a7bff744Sjmc.It Pa CVS/Entries 107*a7bff744SjmcFile containing a list of files managed by 108*a7bff744Sjmc.Nm . 109*a7bff744Sjmc.Pa Entries 110*a7bff744Sjmchas one line per file or directory describing the state of it with 111*a7bff744Sjmcregard to the source repository. 112*a7bff744SjmcThese lines have the following format: 113*a7bff744Sjmc.Pp 114*a7bff744Sjmc.Dl /name/revision/timestamp/options/tag 115*a7bff744Sjmc.Bl -tag -width Ds 116*a7bff744Sjmc.It name 117*a7bff744SjmcName of the file in the directory. 118*a7bff744Sjmc.It revision 119*a7bff744SjmcRevision of the file in the working directory. 120*a7bff744SjmcThe revision is equal to 121*a7bff744Sjmc.Sq 0 122*a7bff744Sjmcif the file has been added with the 123*a7bff744Sjmc.Ic add 124*a7bff744Sjmccommand or preceded by the 125*a7bff744Sjmc.Sq - 126*a7bff744Sjmccharacter if the file has been removed with the 127*a7bff744Sjmc.Ic remove 128*a7bff744Sjmccommand. 129*a7bff744Sjmc.It timestamp 130*a7bff744SjmcContains the timestamp of the file at the time 131*a7bff744Sjmc.Nm 132*a7bff744Sjmccreated it. 133*a7bff744SjmcIf the timestamp is different from the actual modification time of the file, 134*a7bff744Sjmcit means that the file has been modified. 135*a7bff744Sjmc.It options 136*a7bff744SjmcContains the keyword substitution mode used for this file. 137*a7bff744Sjmc.It tag 138*a7bff744SjmcContains 139*a7bff744Sjmc.Sq T 140*a7bff744Sjmcfollowed by a tagname or 141*a7bff744Sjmc.Sq D 142*a7bff744Sjmcfollowed by a date. 143*a7bff744Sjmc.El 144*a7bff744Sjmc.Pp 145*a7bff744SjmcEntries corresponding to directories have the following format: 146*a7bff744Sjmc.Pp 147*a7bff744Sjmc.Dl D/name//// 148*a7bff744Sjmc.Pp 149*a7bff744SjmcThe lines in the 150*a7bff744Sjmc.Pa Entries 151*a7bff744Sjmcfile can be in any order. 152*a7bff744Sjmc.It Pa CVS/Repository 153*a7bff744SjmcFile containing the path to the corresponding directory in the 154*a7bff744Sjmcsource repository. 155*a7bff744Sjmc.It Pa CVS/Root 156*a7bff744SjmcFile containing the value of the 157*a7bff744Sjmc.Ev CVSROOT 158*a7bff744Sjmcvariable at the time of checkout. 159*a7bff744SjmcThis file is used by all 160*a7bff744Sjmc.Nm 161*a7bff744Sjmccommands instead of 162*a7bff744Sjmc.Ev CVSROOT 163*a7bff744Sjmconce 164*a7bff744Sjmc.Nm 165*a7bff744Sjmchas checked for its existence. 166*a7bff744Sjmc.El 167*a7bff744Sjmc.Pp 168*a7bff744SjmcDepending on the circumstances, other files may exist in the 169*a7bff744Sjmc.Pa CVS 170*a7bff744Sjmcdirectory: 171*a7bff744Sjmc.Bl -tag -width Ds 172*a7bff744Sjmc.It Pa CVS/Base 173*a7bff744SjmcIf pseudo-lock mode is enabled in client-server mode, 174*a7bff744Sjmcthe 175*a7bff744Sjmc.Pa Base 176*a7bff744Sjmcdirectory contains a copy of the file on which the 177*a7bff744Sjmc.Ic edit 178*a7bff744Sjmccommand has been issued. 179*a7bff744SjmcThis allows the 180*a7bff744Sjmc.Ic unedit 181*a7bff744Sjmccommand to operate even if the CVS server is unreachable. 182*a7bff744Sjmc.It Pa CVS/Baserev 183*a7bff744SjmcFile listing the revisions for each file contained in the 184*a7bff744Sjmc.Pa Base 185*a7bff744Sjmcdirectory under the following format: 186*a7bff744Sjmc.Pp 187*a7bff744Sjmc.Dl name/revision/ 188*a7bff744Sjmc.It Pa CVS/Baserev.tmp 189*a7bff744SjmcTemporary file used to write 190*a7bff744Sjmc.Pa CVS/Baserev 191*a7bff744Sjmccontent then atomically renamed to 192*a7bff744Sjmc.Pa Baserev . 193*a7bff744Sjmc.It Pa CVS/Checkin.prog 194*a7bff744SjmcFile containing the path to the command specified with the 195*a7bff744Sjmc.Fl i 196*a7bff744Sjmcoption in the 197*a7bff744Sjmc.Pa CVSROOT/modules 198*a7bff744Sjmcfile. 199*a7bff744Sjmc.It Pa CVS/Entries.Backup 200*a7bff744SjmcTemporary file used to write 201*a7bff744Sjmc.Pa CVS/Entries 202*a7bff744Sjmccontent then atomically renamed to 203*a7bff744Sjmc.Pa Entries . 204*a7bff744Sjmc.It Pa CVS/Entries.Static 205*a7bff744SjmcTells 206*a7bff744Sjmc.Nm 207*a7bff744Sjmcto not add files to the directory unless the 208*a7bff744Sjmc.Ic update 209*a7bff744Sjmccommand is issued with the 210*a7bff744Sjmc.Fl d 211*a7bff744Sjmcoption. 212*a7bff744Sjmc.It Pa CVS/Notify 213*a7bff744SjmcFile containing the notifications that could not be sent to the 214*a7bff744SjmcCVS server but will be sent at the next successful connection. 215*a7bff744Sjmc.It Pa CVS/Notify.tmp 216*a7bff744SjmcTemporary file used to write 217*a7bff744Sjmc.Pa CVS/Notify 218*a7bff744Sjmccontent then atomically renamed to 219*a7bff744Sjmc.Pa Notify . 220*a7bff744Sjmc.It Pa CVS/Tag 221*a7bff744SjmcFile containing the symbolic revision that was used at checkout. 222*a7bff744SjmcThe first character of the line is a single letter indicating the 223*a7bff744Sjmctype of tag: 224*a7bff744Sjmc.Sq D , 225*a7bff744Sjmc.Sq N , 226*a7bff744Sjmcor 227*a7bff744Sjmc.Sq T , 228*a7bff744Sjmcfor date, non-branch tag, or branch tag, respectively. 229*a7bff744SjmcThe rest of the line is the tag or date itself. 230*a7bff744SjmcThe 231*a7bff744Sjmc.Pa Tag 232*a7bff744Sjmcfile should not be removed manually: 233*a7bff744Sjmcinstead, use 234*a7bff744Sjmc.Dq update -A . 235*a7bff744Sjmc.It Pa CVS/Template 236*a7bff744SjmcFile containing the template specified by the 237*a7bff744Sjmc.Pa CVSROOT/rcsinfo 238*a7bff744Sjmcfile. 239*a7bff744SjmcIt is only used in client-server mode. 240*a7bff744SjmcLocally, 241*a7bff744Sjmc.Nm 242*a7bff744Sjmcuses the 243*a7bff744Sjmc.Pa rcsinfo 244*a7bff744Sjmcfile directly. 245*a7bff744Sjmc.It Pa CVS/Update.prog 246*a7bff744SjmcFile containing the path to the command specified with the 247*a7bff744Sjmc.Fl u 248*a7bff744Sjmcoption in the 249*a7bff744Sjmc.Pa CVSROOT/modules 250*a7bff744Sjmcfile. 251*a7bff744Sjmc.It Pa CVS/<name>,t 252*a7bff744SjmcFile containing the description of the file 253*a7bff744Sjmc.Pa file 254*a7bff744Sjmcthat has been added with the 255*a7bff744Sjmc.Ic add 256*a7bff744Sjmccommand. 257*a7bff744SjmcThis description is used by 258*a7bff744Sjmc.Nm 259*a7bff744Sjmcwhen archiving this file with the 260*a7bff744Sjmc.Ic commit 261*a7bff744Sjmccommand. 262*a7bff744Sjmc.It Pa $HOME/.cvsignore 263*a7bff744SjmcThis file provides a list of files (or 264*a7bff744Sjmc.Xr sh 1 265*a7bff744Sjmcfile name patterns) that should be ignored by 266*a7bff744Sjmc.Xr cvs 1 267*a7bff744Sjmcduring the 268*a7bff744Sjmc.Ic import , 269*a7bff744Sjmc.Ic release , 270*a7bff744Sjmcand 271*a7bff744Sjmc.Ic update 272*a7bff744Sjmccommands. 273*a7bff744Sjmc.Pp 274*a7bff744SjmcThe syntax of the 275*a7bff744Sjmc.Nm 276*a7bff744Sjmcfile consists of a series of lines, each of which contains a 277*a7bff744Sjmcspace-separated list of filenames. 278*a7bff744SjmcThere is currently no way of using comments in this file. 279*a7bff744Sjmc.Pp 280*a7bff744SjmcDefault patterns that are ignored by 281*a7bff744Sjmc.Xr cvs 1 282*a7bff744Sjmcare as follows: 283*a7bff744Sjmc.Bd -filled 284*a7bff744SjmcCVS, 285*a7bff744SjmcRCS, 286*a7bff744SjmcRCSLOG, 287*a7bff744SjmcSCCS, 288*a7bff744SjmcTAGS, 289*a7bff744Sjmctags, 290*a7bff744Sjmccore, 291*a7bff744Sjmccvslog*, 292*a7bff744Sjmc*.o, 293*a7bff744Sjmc*.so, 294*a7bff744Sjmc*.a, 295*a7bff744Sjmc*.bak, 296*a7bff744Sjmc*.orig, 297*a7bff744Sjmc*.rej, 298*a7bff744Sjmc*.old, 299*a7bff744Sjmc*.exe, 300*a7bff744Sjmc*.depend, 301*a7bff744Sjmc*.obj, 302*a7bff744Sjmc*.elc, 303*a7bff744Sjmc*.ln, 304*a7bff744Sjmc*.olb, 305*a7bff744Sjmc*.core, 306*a7bff744Sjmc.#*, 307*a7bff744Sjmc*~, 308*a7bff744Sjmc_$*, 309*a7bff744Sjmc*$, 310*a7bff744Sjmc#*, 311*a7bff744Sjmc,*. 312*a7bff744Sjmc.Ed 313*a7bff744Sjmc.Pp 314*a7bff744SjmcThe list can be modified using the methods described below: 315*a7bff744Sjmc.Pp 316*a7bff744Sjmc.Bl -enum -compact 317*a7bff744Sjmc.It 318*a7bff744SjmcThe 319*a7bff744Sjmc.Pa $CVSROOT/CVSROOT/cvsignore 320*a7bff744Sjmcfile appends patterns to ignore for the whole repository. 321*a7bff744Sjmc.It 322*a7bff744SjmcThe 323*a7bff744Sjmc.Pa $HOME/.cvsignore 324*a7bff744Sjmcfile appends patterns to ignore for user only. 325*a7bff744Sjmc.It 326*a7bff744SjmcThe content of the 327*a7bff744Sjmc.Ev CVSIGNORE 328*a7bff744Sjmcvariable is appended to the list. 329*a7bff744Sjmc.It 330*a7bff744SjmcOptions to the command line 331*a7bff744Sjmc.Fl I 332*a7bff744Sjmcflag, available for the 333*a7bff744Sjmc.Ic import 334*a7bff744Sjmcand 335*a7bff744Sjmc.Ic update 336*a7bff744Sjmccommands, appends patterns for the current command line action only. 337*a7bff744Sjmc.It 338*a7bff744Sjmc.Pa .cvsignore 339*a7bff744Sjmcfiles placed in the repository directories allow to add patterns to 340*a7bff744Sjmcignore locally. 341*a7bff744SjmcThey do not take effect on sub-directories. 342*a7bff744Sjmc.El 343*a7bff744Sjmc.Pp 344*a7bff744SjmcThe 345*a7bff744Sjmc.Sq !\& 346*a7bff744Sjmccharacter can be used to reset the list of patterns using any of these 347*a7bff744Sjmcfive methods. 348*a7bff744Sjmc.Pp 349*a7bff744SjmcFor the 350*a7bff744Sjmc.Ic update 351*a7bff744Sjmccommand, 352*a7bff744Sjmc.Xr cvs 1 353*a7bff744Sjmchandles files that are already present in the repository even if they 354*a7bff744Sjmcare in the list to ignore. 355*a7bff744SjmcFiles that are in the list to ignore but not in the repository will not 356*a7bff744Sjmcbe listed. 357*a7bff744SjmcThis way, files preceded by the 358*a7bff744Sjmc.Sq ?\& 359*a7bff744Sjmccharacter will not appear even if they should. 360*a7bff744Sjmc.It Pa $HOME/.cvsrc 361*a7bff744SjmcThis file provides a way to give the 362*a7bff744Sjmc.Xr cvs 1 363*a7bff744Sjmcprogram implicit global options and command-specific options. 364*a7bff744SjmcUnless the 365*a7bff744Sjmc.Fl f 366*a7bff744Sjmcoption is specified, 367*a7bff744Sjmc.Xr cvs 1 368*a7bff744Sjmcreads its startup configuration file 369*a7bff744Sjmc.Pa .cvsrc 370*a7bff744Sjmcfrom the home directory of the user who invoked it. 371*a7bff744Sjmc.Pp 372*a7bff744SjmcThe format of each line is as follows: 373*a7bff744Sjmc.Pp 374*a7bff744Sjmc.Dl command [arg ...] 375*a7bff744Sjmc.Pp 376*a7bff744Sjmcwhere 377*a7bff744Sjmc.Ar command 378*a7bff744Sjmcis either the 379*a7bff744Sjmc.Sq cvs 380*a7bff744Sjmckeyword to specify global options, one of the supported 381*a7bff744Sjmc.Xr cvs 1 382*a7bff744Sjmccommands or a command alias. 383*a7bff744SjmcArguments following 384*a7bff744Sjmc.Ar command 385*a7bff744Sjmcwill be added implicitly to the appropriate command's argument vector if it is 386*a7bff744Sjmcrun. 387*a7bff744SjmcLines whose 388*a7bff744Sjmc.Ar command 389*a7bff744Sjmcargument is not a valid command will generate a warning when running without 390*a7bff744Sjmcthe 391*a7bff744Sjmc.Fl q 392*a7bff744Sjmcor 393*a7bff744Sjmc.Fl Q 394*a7bff744Sjmcflags. 395*a7bff744Sjmc.Pp 396*a7bff744SjmcEmpty lines and lines specifying no optional arguments are ignored. 397*a7bff744SjmcA line beginning with a hash character 398*a7bff744Sjmc.Pq Sq # 399*a7bff744Sjmcis considered a comment and ignored. 400*a7bff744Sjmc.Pp 401*a7bff744SjmcFor example, to specify that 402*a7bff744Sjmc.Xr cvs 1 403*a7bff744Sjmcshould always run in quiet mode and the 404*a7bff744Sjmc.Ic diff 405*a7bff744Sjmcinternal command should always produce unified output: 406*a7bff744Sjmc.Bd -literal -offset indent 407*a7bff744Sjmccvs -q 408*a7bff744Sjmcdiff -u 409*a7bff744Sjmc.Ed 410*a7bff744Sjmc.It Pa $HOME/.cvswrappers 411*a7bff744SjmcThis file, located in 412*a7bff744Sjmc.Pa $CVSROOT/CVSROOT 413*a7bff744Sjmcand/or 414*a7bff744Sjmc.Pa $HOME/.cvswrappers , 415*a7bff744Sjmcprovides a way to configure filters for 416*a7bff744Sjmc.Xr cvs 1 417*a7bff744Sjmcbased on file type (name). 418*a7bff744SjmcThis works by specifying a pattern to match for varying file types. 419*a7bff744Sjmc.Pp 420*a7bff744SjmcThe format of each line is as follows: 421*a7bff744Sjmc.Pp 422*a7bff744Sjmc.Dl pattern [option 'value'] [option 'value'] ... 423*a7bff744Sjmc.Pp 424*a7bff744SjmcThe following options are supported: 425*a7bff744Sjmc.Bl -tag -width Ds 426*a7bff744Sjmc.It Fl f Ar filter 427*a7bff744SjmcExecute 428*a7bff744Sjmc.Ar filter 429*a7bff744Sjmcwhen the file is extracted from the repository (for the 430*a7bff744Sjmc.Ic checkout , 431*a7bff744Sjmc.Ic export , 432*a7bff744Sjmcand 433*a7bff744Sjmc.Ic update 434*a7bff744Sjmccommands). 435*a7bff744Sjmc.It Fl k Ar mode 436*a7bff744SjmcSpecify the keyword substitution mode. 437*a7bff744SjmcSee the 438*a7bff744Sjmc.Sx KEYWORD SUBSTITUTION 439*a7bff744Sjmcsection of 440*a7bff744Sjmc.Xr rcs 1 441*a7bff744Sjmcfor more information. 442*a7bff744Sjmc.It Fl m Ar method 443*a7bff744SjmcSpecify the merge methodology to be used when a file is updated. 444*a7bff744Sjmc.Pp 445*a7bff744SjmcThe methods are as follows: 446*a7bff744Sjmc.Bl -tag -width Ds 447*a7bff744Sjmc.It COPY 448*a7bff744SjmcWhen the 449*a7bff744Sjmc.Ic update 450*a7bff744Sjmccommand is used, 451*a7bff744Sjmc.Xr cvs 1 452*a7bff744Sjmcwill merely copy one version over another and let the user do the merge 453*a7bff744Sjmcby himself. 454*a7bff744SjmcThis method is used by default on binary files (see the 455*a7bff744Sjmc.Fl k Ar b 456*a7bff744Sjmcoption). 457*a7bff744Sjmc.It MERGE 458*a7bff744SjmcTry to merge the files. 459*a7bff744SjmcThis method is the default. 460*a7bff744Sjmc.El 461*a7bff744Sjmc.It Fl t Ar filter 462*a7bff744SjmcExecute 463*a7bff744Sjmc.Ar filter 464*a7bff744Sjmcbefore the file is archived in the repository (for the 465*a7bff744Sjmc.Ic commit , 466*a7bff744Sjmcand 467*a7bff744Sjmc.Ic import 468*a7bff744Sjmccommands). 469*a7bff744Sjmc.El 470*a7bff744Sjmc.It Pa $TMPDIR/cvs-serv Ns Aq Pa pid 471*a7bff744SjmcTemporary directory created by the server where 472*a7bff744Sjmc.Ar pid 473*a7bff744Sjmcis the process ID of the server. 474*a7bff744SjmcIt is located in the directory specified by the 475*a7bff744Sjmc.Ev TMPDIR 476*a7bff744Sjmcenvironment variable or the 477*a7bff744Sjmc.Fl T 478*a7bff744Sjmcglobal option. 479*a7bff744SjmcSee above for more information. 480*a7bff744Sjmc.El 481*a7bff744Sjmc.Sh SEE ALSO 482*a7bff744Sjmc.Xr cvs 1 , 483*a7bff744Sjmc.Xr cvsintro 7 484