/[CvsGraph]/cvsgraph/README
ViewVC logotype

Annotate of /cvsgraph/README

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.16 - (show annotations)
Sat Jul 20 20:41:40 2002 UTC (15 years, 4 months ago) by bertho
Branch: MAIN
CVS Tags: REL_1_3_0
Changes since 1.15: +12 -5 lines
Add rev_maxtags config to limit number of tags per revison box
Hopefully fix configure.in (finally?)
1 CvsGraph 1.3.0, 20-Jul-2002
2 ===========================
3 CvsGraph creates a graphic representation of the revisions and branches in a
4 cvs/rcs repository. CvsGraph is inspired on the 'graph'-option from WinCVS. I
5 could not find something right away on the web and decided that it was time to
6 write a stand-alone version. I might have been doing some double work, but hey,
7 I like a hack.
8
9
10
11 New in this version
12 -------------------
13 - Implement a workaround for browsers that do not understand unordered
14 y-coordinates in the imagemap when generated upside down.
15
16 - Fix the slowness of CvsGraph when parsing very large (typically -kb files) by
17 bypassing the parsing of the actual deltatext. On my machine (K6-2/500/256M
18 it makes a difference of 7.5s vs 0.04s on a 93MByte file, without counting
19 disk-overhead; with disk-overhead it takes 12.5s). Downside is that the
20 logentry cannot be expanded if the file is not parsed in full (see below).
21 Use option parse_logs to enable log-expansions.
22
23 - Implemented logentry expansions using %l and %L. You must enable full parsing
24 (option parse_logs) for this to work.
25
26 - Fixed a possible buffer overflow in the string expansion. However, this is a
27 very low-risk overflow, since it will trash the heap and _not_ the stack.
28 Furthermore, you need to pass strings from CGI directly to cvsgraph without
29 any checks to come even close to trash the heap.
30
31 - Fixed a segfault on IRIX in the bsearch calls. These lookups could be called
32 with a NULL pointer and IRIX's libc doesn't like that.
33
34 - Implement left to right and right to left images. The entire tree can now be
35 drawn horizontally when option left_right is set. Using both left_right and
36 upside_down results in right to left images.
37
38 - Implement limits on how many tags are printed in a revision box using new
39 config parameter rev_maxtags. Ellipsis (...) are printed if the limit becomes
40 active.
41
42 - Changed the configure script to handle libraries more intelligently. This
43 should be able to handle static libraries better.
44
45
46
47 Compiling
48 ---------
49
50 create directory:
51 $ cd /where/ever/you/want
52 $ tar xzf cvsgraph-1.3.0.tar.gz
53 $ cd cvsgraph-1.3.0
54 $ ./configure
55 $ make
56
57 This should do the trick and you have an executable file 'cvsgraph' in the
58 current directory.
59
60 NOTE: The GD library is required for CvsGraph to function. Get it from
61 http://www.boutell.com, compile it and use either --with-gd-lib=DIR
62 and --with-gd-inc=DIR to specify its location. You might also have
63 to use --with-z-inc, --with-z-lib and --with-png-inc, --with-png-lib
64 for gd versions 1.6 and higher.
65 If you build with static libgd (i.e. libgd.a) and already have
66 libpng.so and/or libjpeg6b.so (i.e. dynamic), then you might want to
67 try to trick configure into adding these libs to the tests by adding
68 commandline options '--with-png-lib=.' and '--with-jpeg-lib=.'.
69 If you have linked libgd with freetype, then you might also need
70 either --with-freetype-lib or --with-freetype2-lib.
71
72
73
74 Installing
75 ----------
76 Put the executable file 'cvsgraph' somewhere where you think it should go.
77 Normally this would be "/usr/local/bin" or "/usr/bin". The configuration file
78 ought to be put in "/usr/local/etc" or "/etc". The exact position can be
79 overriden on the commandline anyway. Edit the configuration file to your liking
80 and you should be all set.
81
82
83
84 Running CvsGraph
85 ----------------
86 Do *NOT* execute the program directly from a webserver. Direct execution would
87 be very insecure. Make a wrapper cgi-script in php, perl, or whatever you
88 normally use. The easiest way is to get the ViewCVS package from their website
89 at http://viewcvs.sourceforge.net and follow the instructions.
90
91 Alternately, you can hack the 'cvsweb' package to call CvsGraph. There are
92 several scripts and patches available from the CvsGraph homepage (see below for
93 address). However, the scripts are no longer maintained because ViewCVS has
94 native support now.
95
96 To generate an image do something like:
97 $ cvsgraph -r /home/to/repository -m module -o mygraph.png myfile.c,v
98
99 This generates a revison/branch image of the rcs file 'myfile.c,v' and puts it
100 into 'mygraph.png'. The '-r' option is the path to the repository *located and
101 accessible* on your filesystem. The '-m' is the module in the repository. Note
102 that the extension of the file ends with ",v".
103
104 Just to make it clear: You cannot make images from a cvs-repository over the
105 internet as if you were using cvs. The repository files
106 must be on a locally mounted filesystem. However, you
107 can use cvsup or rsync to get a repository to your
108 local filesystem and make then image from there.
109
110 Type 'cvsgraph -h' to get a full list of options. If the output is not given
111 (no '-o'), then the output is written to standard output.
112
113 Please read the manual pages cvsgraph(1) and cvsgraph.conf(5) for more
114 information on execution and configuration.
115
116
117
118 Todo
119 ----
120 - do a better job in making a layout (auto moving branches and rubber banding
121 revision-connectors to make place). A start is made, but this is not very
122 functional yet.
123
124 - draw only a part or parts of the tree.
125
126
127
128 License
129 -------
130 CvsGraph is distributed under GNU GPL v2. See 'LICENSE' for more information.
131
132
133
134 Contact
135 -------
136 HomePage: http://www.akhphd.au.dk/~bertho/cvsgraph
137 E-mail: cvsgraph@akhphd.au.dk
138
139 Greetings Bertho
140

  ViewVC Help
Powered by ViewVC 1.1.0 with CvsGraph 1.7.0