Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com
Answertopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions
Privacy Policy

  




 

 


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.2.5 The CVS directory in the repository

The `CVS' directory in each repository directory contains information such as file attributes (in a file called `CVS/fileattr'. In the future additional files may be added to this directory, so implementations should silently ignore additional files.

This behavior is implemented only by CVS 1.7 and later; for details see Using watches with old versions of CVS.

The format of the `fileattr' file is a series of entries of the following form (where `{' and `}' means the text between the braces can be repeated zero or more times):

ent-type filename <tab> attrname = attrval {; attrname = attrval} <linefeed>

ent-type is `F' for a file, in which case the entry specifies the attributes for that file.

ent-type is `D', and filename empty, to specify default attributes to be used for newly added files.

Other ent-type are reserved for future expansion. CVS 1.9 and older will delete them any time it writes file attributes. CVS 1.10 and later will preserve them.

Note that the order of the lines is not significant; a program writing the fileattr file may rearrange them at its convenience.

There is currently no way of quoting tabs or line feeds in the filename, `=' in attrname, `;' in attrval, etc. Note: some implementations also don't handle a NUL character in any of the fields, but implementations are encouraged to allow it.

By convention, attrname starting with `_' is for an attribute given special meaning by CVS; other attrnames are for user-defined attributes (or will be, once implementations start supporting user-defined attributes).

Built-in attributes:

_watched

Present means the file is watched and should be checked out read-only.

_watchers

Users with watches for this file. Value is watcher > type { , watcher > type } where watcher is a username, and type is zero or more of edit,unedit,commit separated by `+' (that is, nothing if none; there is no "none" or "all" keyword).

_editors

Users editing this file. Value is editor > val { , editor > val } where editor is a username, and val is time+hostname+pathname, where time is when the cvs edit command (or equivalent) happened, and hostname and pathname are for the working directory.

Example:

 
Ffile1 _watched=;_watchers=joe>edit,mary>commit
Ffile2 _watched=;_editors=sue>8 Jan 1975+workstn1+/home/sue/cvs
D _watched=

means that the file `file1' should be checked out read-only. Furthermore, joe is watching for edits and mary is watching for commits. The file `file2' should be checked out read-only; sue started editing it on 8 Jan 1975 in the directory `/home/sue/cvs' on the machine workstn1. Future files which are added should be checked out read-only. To represent this example here, we have shown a space after `D', `Ffile1', and `Ffile2', but in fact there must be a single tab character there and no spaces.


 
 
  Published under the terms of the GNU General Public License Design by Interspire