Skip site navigation (1)Skip section navigation (2)

  
 
  

home | help
CVS(5)			       File Formats Manual			  CVS(5)

NAME
     cvs -- OpenCVS files format

DESCRIPTION
     This  manual  page  documents  the various support files for cvs(1) and the
     format of those files.

     The location of a module's files are  known  as  its  CVSROOT.   The  files
     within CVSROOT are as follows:

     $CVSROOT/CVSROOT
	     Directory containing repository administrative files.

     $CVSROOT/CVSROOT/config
	     File  containing various configuration options.  The format of each
	     line is as follows:

		   keyword=value

	     Extraneous spaces or tabs are not permitted.  A line beginning with
	     a hash character (`#') is considered a comment and ignored.

	     The following options are available:

		   dlimit='value'    Set the process data size limit.
		   tag='value'	     Set the name of a local tag to use in addi-
				     tion to Id.
		   umask='value'     Set the default umask to use when	creating
				     files and directories.

     $CVSROOT/CVSROOT/history
	     File containing reports of checkout, commit, export, release, rtag,
	     and  update  commands  that have been issued.  By default, the init
	     command creates the history file.	To disable history logging,  the
	     history file should be removed manually.  The history command shows
	     these reports according to several criteria.

     $CVSROOT/CVSROOT/loginfo
	     File containing associations between modules and handlers for post-
	     commit logging.

     $CVSROOT/CVSROOT/modules
	     The format of each line is as follows:

		   module [option] directory [file ...] [&module ...]

	     Empty  lines  are	ignored.  A line beginning with a hash character
	     (`#') is considered a comment and ignored.  A long line can be con-
	     tinued on the next line by specifying a backslash	(`\')  character
	     as last character.

	     The following options are available:

		-d name
			Allow check out of module under different name.

		-i prog
			Specify  program prog to run whenever the commit command
			is issued.

		-o prog
			Specify program prog to run whenever the  checkout  com-
			mand is issued.

		-s status
			Set status to module.

		-t prog
			Specify program prog to run whenever the rtag command is
			issued.

		-u prog
			Specify  program prog to run whenever the update command
			is issued.

     Each directory that is managed by cvs contains a CVS directory.   This  di-
     rectory  is  used	by various cvs commands to record the status of files in
     the current working directory.  These files should not be modified manually
     by the user but by the cvs commands instead.  Files that are always  stored
     in every CVS directory are as follows:

     CVS/Entries
	     File  containing  a  list of files managed by cvs.  Entries has one
	     line per file or directory describing the state of it  with  regard
	     to the source repository.	These lines have the following format:

		   /name/revision/timestamp/options/tag

	     name    Name of the file in the directory.

	     revision
		     Revision  of  the file in the working directory.  The revi-
		     sion is equal to `0' if the file has been	added  with  the
		     add  command  or  preceded by the `-' character if the file
		     has been removed with the remove command.

	     timestamp
		     Contains the timestamp of the file at the time cvs  created
		     it.   If the timestamp is different from the actual modifi-
		     cation time of the file, it means that the  file  has  been
		     modified.

	     options
		     Contains the keyword substitution mode used for this file.

	     tag     Contains  `T'  followed  by  a tagname or `D' followed by a
		     date.

	     Entries corresponding to directories have the following format:

		   D/name////

	     The lines in the Entries file can be in any order.

     CVS/Repository
	     File containing the path to  the  corresponding  directory  in  the
	     source repository.

     CVS/Root
	     File  containing  the  value of the CVSROOT variable at the time of
	     checkout.	This file is used by all cvs commands instead of CVSROOT
	     once cvs has checked for its existence.

     Depending on the circumstances, other files may exist in the CVS directory:

     CVS/Base
	     If pseudo-lock mode is enabled in client-server mode, the Base  di-
	     rectory  contains	a copy of the file on which the edit command has
	     been issued.  This allows the unedit command to operate even if the
	     CVS server is unreachable.

     CVS/Baserev
	     File listing the revisions for each file contained in the Base  di-
	     rectory under the following format:

		   name/revision/

     CVS/Baserev.tmp
	     Temporary	file  used  to write CVS/Baserev content then atomically
	     renamed to Baserev.

     CVS/Checkin.prog
	     File containing the path to the command specified with the  -i  op-
	     tion in the CVSROOT/modules file.

     CVS/Entries.Backup
	     Temporary	file  used  to write CVS/Entries content then atomically
	     renamed to Entries.

     CVS/Entries.Static
	     Tells cvs to not add files to the directory unless the update  com-
	     mand is issued with the -d option.

     CVS/Notify
	     File containing the notifications that could not be sent to the CVS
	     server but will be sent at the next successful connection.

     CVS/Notify.tmp
	     Temporary file used to write CVS/Notify content then atomically re-
	     named to Notify.

     CVS/Tag
	     File  containing  the  symbolic revision that was used at checkout.
	     The first character of the line is a single letter  indicating  the
	     type  of tag: `D', `N', or `T', for date, non-branch tag, or branch
	     tag, respectively.  The rest of the line is the tag or date itself.
	     The Tag file should not be removed manually: instead,  use  "update
	     -A".

     CVS/Template
	     File containing the template specified by the CVSROOT/rcsinfo file.
	     It  is  only  used  in  client-server  mode.  Locally, cvs uses the
	     rcsinfo file directly.

     CVS/Update.prog
	     File containing the path to the command specified with the  -u  op-
	     tion in the CVSROOT/modules file.

     CVS/<name>,t
	     File  containing  the  description  of  the file file that has been
	     added with the add command.  This description is used by  cvs  when
	     archiving this file with the commit command.

     $HOME/.cvsignore
	     This  file  provides  a list of files (or sh(1) file name patterns)
	     that should be ignored by cvs(1) during the  import,  release,  and
	     update commands.

	     The  syntax  of the cvs file consists of a series of lines, each of
	     which contains a space-separated list of filenames.  There is  cur-
	     rently no way of using comments in this file.

	     Default patterns that are ignored by cvs(1) are as follows:

	     CVS,  RCS, RCSLOG, SCCS, TAGS, tags, core, cvslog*, *.o, *.so, *.a,
	     *.bak, *.orig, *.rej, *.old, *.exe, *.depend, *.obj,  *.elc,  *.ln,
	     *.olb, *.core, .#*, *~, _$*, *$, #*, ,*.

	     The list can be modified using the methods described below:

	     1.   The $CVSROOT/CVSROOT/cvsignore file appends patterns to ignore
		  for the whole repository.
	     2.   The  $HOME/.cvsignore file appends patterns to ignore for user
		  only.
	     3.   The content of the CVSIGNORE variable is appended to the list.
	     4.   Options to the command line -I flag, available for the  import
		  and  update commands, appends patterns for the current command
		  line action only.
	     5.   .cvsignore files placed in the repository directories allow to
		  add patterns to ignore locally.  They do not	take  effect  on
		  sub-directories.

	     The  `!'  character can be used to reset the list of patterns using
	     any of these five methods.

	     For the update command,  cvs(1)  handles  files  that  are  already
	     present  in  the repository even if they are in the list to ignore.
	     Files that are in the list to ignore but not in the repository will
	     not be listed.  This way, files preceded by the `?' character  will
	     not appear even if they should.

     $HOME/.cvsrc
	     This file provides a way to give the cvs(1) program implicit global
	     options  and  command-specific  options.	Unless	the -f option is
	     specified, cvs(1) reads its startup configuration file .cvsrc  from
	     the home directory of the user who invoked it.

	     The format of each line is as follows:

		   command [arg ...]

	     where  command  is  either  the `cvs' keyword to specify global op-
	     tions, one of the supported cvs(1) commands  or  a  command  alias.
	     Arguments	following command will be added implicitly to the appro-
	     priate command's argument vector if it is run.  Lines whose command
	     argument is not a valid command will generate a warning  when  run-
	     ning with the -V flag.

	     Empty  lines  are	ignored.  A line beginning with a hash character
	     (`#') is considered a comment and ignored.

	     For example, to specify that cvs(1) should always run in quiet mode
	     and the diff internal command should always produce unified output:

		   cvs -q
		   diff -u

     $HOME/.cvswrappers
	     This file, located in $CVSROOT/CVSROOT  and/or  $HOME/.cvswrappers,
	     provides  a  way to configure filters for cvs(1) based on file type
	     (name).  This works by specifying a pattern to  match  for  varying
	     file types.

	     The format of each line is as follows:

		   pattern [option 'value'] [option 'value'] ...

	     The following options are supported:

	     -f filter
		     Execute  filter when the file is extracted from the reposi-
		     tory (for the checkout, export, and update commands).

	     -k mode
		     Specify the keyword substitution  mode.   See  the  KEYWORD
		     SUBSTITUTION section of rcs(1) for more information.

	     -m method
		     Specify the merge methodology to be used when a file is up-
		     dated.

		     The methods are as follows:

		     COPY    When the update command is used, cvs(1) will merely
			     copy  one	version over another and let the user do
			     the merge by himself.  This method is used  by  de-
			     fault on binary files (see the -k b option).

		     MERGE   Try  to  merge  the  files.  This method is the de-
			     fault.

	     -t filter
		     Execute filter before the file is archived in  the  reposi-
		     tory (for the commit, and import commands).

     $TMPDIR/cvs-serv<pid>
	     Temporary	directory created by the server where pid is the process
	     ID of the server.	It is located in the directory specified by  the
	     TMPDIR environment variable or the -T global option.  See above for
	     more information.

SEE ALSO
     cvs(1), cvsintro(7)

FreeBSD ports 15.quarterly	  June 29, 2013 			  CVS(5)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=opencvs&sektion=5&manpath=FreeBSD+Ports+15.1.quarterly>

home | help