NAME
cvsfs – cvs repository viewer

SYNOPSIS
cvsfs [ –Ddabv ] [ –s srv ] [ –k keyp ] [ –m mntpnt ] [:method:[user@]]host:/root module

DESCRIPTION
Cvsfs creates a readonly view of a remote CVS repository module. Two views are presented onto the repository, one indexed by date – similar to venti(1)'s dump filesystem, the other indexed by tag name. A special tag directory HEAD conatins most up–to–date view of the repository. The file Changelog at the top level contains an auto–generated cannonical history of the changes to the module.

File metadata is only filled in when the file is first read. A file's owner is the author of the last change, and its group is the name of the locker of the file or unlocked if none, the last modifier's ID is the CVS release number. Empty directories are not stored by CVS and thus are not listed.
The options are:
v    Display server version string and some stats at startup. (See BUGS below)
a –b
The same after and before options as documented in mount(1).
D    9P request debug.
d    CVS protocol debug.
m    mntpnt
set the mount point for the remote filesystem; the default is /n/cvs.
k    keyparam
lists extra parameters which will be passed to factotum(4) to remove key ambiguity.
s    srvname
set the mount point for the published /srv file the default is not to publish a /srv file.
method
CVS has allows several methods for attaching to servers, cvsfs only :ext: and :pserver: are supported. The :ext method attempts to use ssh(1), cpu(1) rx(1) in that order.
username
the username to attach as.
hostthe name of the machine to attach to.
cvsroot
the path to the root of the CVS filesystem on the remote machine.
module
The name of the module on the remote server

BUGS
No support for Kerberos GSSAPI authentication – the :gserver: method.

All files are read (checked out) on demand. Files not accessed for 10 mins have their contents flushed. The CVS server rembembers which files have been checked out and refuses to resend these. As a result we must disconnect & reconnect on each read→idle→reread cycle. This is handled by cvsfs but may cause a delay on open(2).

cvsfs relies on parsing CVS rlog data to build its knowledge of the tree, This data is designed to be human readable and is thus liable to change between CVS server versions, though the authors of CVS do endevour not to change it needlessly.

The –v option causes a CVS ver request to be sent. This can cause some servers (E.G those used by sourceforge) to abort with the error Terminated with fatal signal 11; do not use the –v option with such servers.

Cvsfs has currently (Feb–05) been tested with cvs V1.12.9 and V1.11.1p1.

Copyright © 2008 Lucent Technologies. All rights reserved.