Annotation of cvsweb/README, Revision 3.2.2.1
3.2 scop 1: $FreeBSD$
2:
3.1 knu 3: The cgi-script cvsweb.cgi is written by Bill Fenner <fenner@freebsd.org>
4: (see [1]) for the freebsd project. It allows browsing of
5: CVS-repositories (see [2]) with an HTML-browser.
6:
7: This version is based on Bill's script and is hacked to fit our needs,
8: so don't blame him if anything doesn't work ..
9:
10: Added features:
11: - a colored side by side diff
12: - easier navigation
13: - mime-type aware checkout which allows for browsing
14: of version controlled HTML-pages
15: - easier configuration - everything configurable is in one
16: external file now
17: - added cvs-annotate - this requires cvs >= 1.9
18: (tested with cvs 1.10)
19: - a better way of viewing timestamps: they're shown as age
20: (something like 'changed 2 days 4 hours ago')
21: - sorting by filename / age - just click on the corresponding
22: column
23: - urlencodes all filenames so files with spaces and special
24: characters in their names are viewable as well.
25: - selectionbox for choosing different CVS-roots
26: - overview of last revisionnumber, age and logentry in the
27: directory view
28: - you can check out the current revision of a file if you are
29: in the directory view (idea from Nick Brachet)
30: - gzip'ed output if the browser accepts this; this can reduce the
31: size (and download time) by a factor of 4 (directory view) to
32: 10 (colored diff; the size of the colored diff could be reduced
33: with CSS .. anyone ?). The use of gzip has been in the very first
34: version of cvsweb (by Bill Fenner), but has been removed because
35: it wasn't easy to determine if a browser actually understands it. Today
36: the browsers state if they accept the Content-encoding gzip..
37: .. but MSIE lies about this (so cvsweb disables gzip-encoding in this
38: case).
39: - Tag based browsing. An easy and what I think intuitive way to browse a
40: CVS tree based on tags, with filtering of files and CVS logs to only
41: show whats relevant for the selected tag.
42: - "Pretty-printed" checkouts for text based files. My intention is to
43: eventually add cross-referencing to this, but for now the file is only
44: converted to HTML with automatic detection of various links.
45: - "Click-on-version" diff selection.
46: - sorting for every column now
47: - uses 'cvs co' for checkout instead of rcs co
48: - Ability to show directory descriptions from CVSROOT/descriptions
49:
50: cvsweb.cgi became quite huge now and is bad style code (I am not a
51: perl-programmer - this is what I do in my spare time!) so this
52: should be rewritten.
53:
54: I'd propose a Java-servlet which could use the C/S-protocol .. anyone ?
55:
56: And what about using mod_perl, and rewriting it into a set of proper Perl-5
57: modules?
58:
59: This software is distributed under the terms of the BSD-licence.
60:
3.2.2.1 ! schwarze 61: You can download the latest version with:
! 62: $ cvs -d anoncvs@mandoc.bsd.lv:/cvs co cvsweb
! 63: <http://mandoc.bsd.lv/anoncvs.html>
! 64: <http://mandoc.bsd.lv/cgi-bin/cvsweb/?cvsroot=cvsweb>
3.1 knu 65:
66: -- refs
67: [1] for the original Version of cvsweb.cgi, see
68: <http://www.freebsd.org/~fenner/cvsweb/>
3.2 scop 69: [2] for cvs, see <http://www.cvshome.org/>
3.1 knu 70:
CVSweb