ViewCVS: Viewing CVS Repositories

The ViewCVS software was inspired by cvsweb (by Henner Zeller). I wanted to make some changes and updates, but cvsweb was implemented in Perl (and rather poorly, IMO). So I undertook the task to convert the software to Python.

ViewCVS can browse directories, change logs, and specific revisions of files. It can display diffs between versions and show selections of files based on tags or branches. In addition, ViewCVS has "annotation" or "blame" support, and the beginnings of Bonsai-like query facilities.

ViewCVS is currently at version 0.5. It was a port of the cvsweb script, but has had numerous cleanups and other modifications, based on some of Python's strengths. There is still some minor "badness" in there, but I've been working on flushing that out, while adding new features. Currently, the functionality of ViewCVS surpasses that of cvsweb.

The software is available for download:

Version 0.5 of ViewCVS

Of course, it is also available through ViewCVS itself:

http://www.lyra.org/cgi-bin/viewcvs.cgi/viewcvs/

ViewCVS requires Python 1.5 (which has been out for a couple years and is readily available for your favorite operating system).

[ Greg's page ] [ other Python software ]


Mailing List

If you have any comments, questions, suggestions, or patches, then please send them to the ViewCVS mailing list.

A mailing list for ViewCVS developers is also available.


Additional features over cvsweb

Future features, coming soon:

Longer term:


Colorization of files

ViewCVS can make use of the enscript program to colorize files in the CVS repository. If enscript is present on your system, then set the use_enscript option in the viewcvs.conf configuration file. If necessary, update the enscript_path option to point to your installation directory. ... That's it! Now, as you view files through ViewCVS, they will be colored.

Colorization of Python files

ViewCVS currently comes with a builtin colorizer for Python source files. This may go away, given the new enscript support...

Christophe Pelte suggested this feature: colorize Python source files using py2html (by Marc-Andrew Lemburg, based on PyFontify by Just van Rossum). I've added this feature to ViewCVS 0.3, along with a generalized plugin mechanism for custom coloring other types of files. See the instructions within the viewcvs.cgi for setting the py2html_path configuration variable if you want to use this feature.


Greg Stein
Last modified: Fri May 12 03:53:51 PDT 2000