man cvsgraph (Commandes) - A CVS/RCS repository grapher

NAME

cvsgraph - A CVS/RCS repository grapher

SYNOPSIS

cvsgraph [options] [file]

DESCRIPTION

CvsGraph generates images and image maps from CVS/RCS repository files.

OPTIONS

-b
Add a branch box at the end of the trunk too. This option negates the branch_dupbox setting from the configuration file.
-c file
Read alternate config from file.
-d level
Enable debug mode at level. The amount of information is determined by a bitwise or of the following: 1=config lexer, 2=config parser, 4=rcsfile lexer, 8=rcsfile parser, 16=rcsfile structure. The level argument may be in decimal, octal or hexadecimal format.
-h
A brief description of possible options.
-i
Generate an image map instead of an image.
-I file
Also write an image map to file. This can be useful if you want to generate both image and image map simultaneously. This halves the total time spent on accessing the repository file because it is parsed only once.

However, keeping track of auto-generated files can be a bit of a hack if used in HTTP requests (unless you pass both image and HTML file in one HTTP stream).

Note 1: most time is used for the image-drawing routines (actually libgd), so you might want to think twice in CGI apps.

Note 2: you can still use '-o' to specify an output file for the image. And, if you also specify '-i', then you'll get two image maps, for whatever purpose that might be.
-k
Try to reduce the image size by adjusting inter-revision spacing and moving trunks more left. This options negates the auto_stretch setting from the configuration file.
-M name
Use name as image map name (has only effect in combination with '-i'). This option overrides map_name in the configuration file.
-m mod
Use mod as the CVS module. This option overrides cvsmodule in the configuration file.
-O cfg_option=value[;opt=val[...]]
Set cfg_option to value. Multiple -O are allowed as well as multiple options can be set simultaneously by separating them with ';'. See cvsgraph.conf(5) for a detailed list of options. See also CONFIGURATION below.
-o file
Output to file. Otherwise, output is written to standard output.
-q
Be quiet (i.e. no warnings)
-r path
Use path as the CVS root. This option overrides cvsroot in the configuration file.
-s
Strip all untagged revisions from the tree. Only the first, last and each tagged revision of each trunk will be shown. This will greatly reduce the size of the generated image if you didn't tag everything (and are not interested in all revisions). This option negates the strip_untagged setting from the configuration file.
-S
Also strip the first revision in a branch if untagged and not a branch point. This has only effect if strip_untagged or option '-s' is set. The '-S' option negates the strip_first_rev from the configuration file.
-u
Draw the tree upside down (newest revision at the top). This option negates the upside_down setting from the configuration file.
-V
Print version and exit.
-x {3,4,x}
Set the HTML level of compliance for image maps. Use 3 for HTML 3.x, 4 for HTML 4.x and x for XHTML. Default is HTML 3.x compatibility.
-[0-9] txt
Use txt for expansion

CONFIGURATION

CvsGraph starts with reading a configuration file. If the '-c' option is given on the command line, then it is read. Otherwise, cvsgraph first looks for a configuration file in the current directory using ./cvsgraph.conf and, if not found, tries to open /usr/local/etc/cvsgraph.conf. Defaults and command line overrides will be used if no configuration file can be opened. The format of the configuration file is described in cvsgraph.conf(5). Configuration parameters entered on the command line have always precedence over the configuration file. Configuration options are processed in the following order:

- configuration file

- '-O' command line options

- other command line overrides (-bkMmrSsu)

If you do not want to process any configuration file, then you can set option '-c /dev/null', which will read an empty configuration file.

The location of a repository file is determined by the configuration parameters cvsroot and cvsmodule and the respective command line options '-r' and '-m'. The cvsroot, cvsmodule and file are concatenated with separating '/' path-separators forming the final location:

<cvsroot>/<cvsmodule>/file

No path-separator is appended if cvsroot and cvsmodule are empty strings. An error message is issued if the resulting path cannot be opened. Note that cvsgraph does not attempt to check any validity of the path components. This enables a user to open any file on the file-system by setting cvsroot and cvsmodule to empty strings.

For example, cvsgraph -r '' -m '' ../myfile,v would try to open the file ../myfile,v. Note that a variety of possibilities yield the same file and all have their advantages and drawbacks, which are mostly related to the possible use of the parameters in text expansions.

If no file is given on the command line, then input is read from standard input. This can make expansion strings somewhat strange looking, but they are composed with the information available. If no input file was given, then the input filename for expansion is set to <stdin>.

OUTPUT

The output generated by cvsgraph can be either an image (default) or and HTML image map ('-i' and '-I' options).

Images can have several formats, depending on the capabilities of the gd library on which the drawing is built. The configuration allows for GIF, PNG or JPEG type images. Newer versions of gd do no longer support GIF and PNG will be used instead.

Generation of image maps conforms to the HTML standard and maps rectangular regions of the image where revisions and branches are drawn. Additionally, an extra rectangular region is generated between revisions to support diff generation.

FILES

/usr/local/etc/cvsgraph.conf
Configuration file read for default layout parameters.

AUTHOR

CvsGraph is written and maintained by B. Stultiens.

Send comments and bug reports to cvsgraph@akhphd.au.dk and visit the homepage at:

http://www.akhphd.au.dk/~bertho/cvsgraph/.

SEE ALSO