/[CvsGraph]/cvsgraph/README
ViewVC logotype

Annotate of /cvsgraph/README

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


Revision 1.11 - (show annotations)
Wed Jan 9 00:28:36 2002 UTC (15 years, 10 months ago) by bertho
Branch: MAIN
Changes since 1.10: +13 -0 lines
- Added a new version of auto_stretch. It seems to work better
  bit it still needs improvement (a lot)
- Added TrueType support. This solves also a problem of missing
  libraries if libgd needs -lttf or -lfreetype.
1 CvsGraph 1.2.0, 19-Dec-2001
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 - The entire tree can now be drawn upside-down. This is usefull if you have
14 many revisions in a trunk and want to see the latest first. The configuration
15 includes an option 'upside_down' with a boolean argument. You can override the
16 default value on the command-line with the '-u' switch, which will negate the
17 configured value.
18 The imagemap generation also supports this, so you will still be able to point
19 and shoot on and between the revisions.
20
21 - You can now instruct CvsGraph to ommit all revisions that are not tagged. This
22 is highly usefull for very large trees/trunks to reduce the produced image
23 size. Note that the first and the last revision in a trunk are not hidden.
24 A new configuration option 'strip_untagged' with boolean argument enables this
25 feature. Alternatively, the command-line provides option '-s' wich negates the
26 value set in the configuration file. You can also strip the first revision if
27 it is untagged using '-S' and/or strip_first_rev.
28
29 - The boxes to identify the branches can now be drawn on both sides of the trunk.
30 Configuration option 'branch_dupbox' with boolean argument activates this
31 feature, which is usefull when the tree is drawn upside-down.The command-line
32 option '-b' negated the configured value.
33
34 - Configuration no longer requires a configuration file. All options can now be
35 entered on the commandline using '-O'. CvsGraph will still read the
36 configuration file if one is avaliable, but it is no longer an error if none
37 is found.
38
39 - If no file is entered on the command-line, then the input is taken from
40 standard input, like all decent *nix programs.
41
42 - ViewCVS (http://viewcvs.sourceforge.net) is now officially supporting the use
43 of CvsGraph in their code as of version 0.8. So, no bad hacks needed anymore
44 to get it working, and it always looks nice :-)
45
46 - Implemented string drawing using freetype interface of libgd. It looks very
47 nice, but it is significantly slower than gd's standard bitmap fonts. Extra
48 configuration parameters *_ttfont and *_ttsize set font and size. Option
49 use_ttf enables ttf rendering. Note that gd's bitmap fonts are used as a
50 fallback in case where the ttfont contains errors or is not found.
51
52 - The branch tag color and font can now be set separately using branch_tag_*
53 configuration options.
54
55
56
57 Compiling
58 ---------
59
60 create directory:
61 $ cd /where/ever/you/want
62 $ tar xzf cvsgraph-1.2.0.tar.gz
63 $ cd cvsgraph-1.2.0
64 $ ./configure
65 $ make
66
67 This should do the trick and you have an executable file 'cvsgraph' in the
68 current directory.
69
70 NOTE: The GD library is required for CvsGraph to function. Get it from
71 http://www.boutell.com, compile it and use either --with-gd-lib=DIR
72 and --with-gd-inc=DIR to specify its location. You might also have
73 to use --with-z-inc, --with-z-lib and --with-png-inc, --with-png-lib
74 for gd versions 1.6 and higher.
75 If you build with static libgd (i.e. libgd.a) and already have
76 libpng.so and/or libjpeg6b.so (i.e. dynamic), then you might want to
77 try to trick configure into adding these libs to the tests by adding
78 commandline options '--with-png-lib=.' and '--with-jpeg-lib=.'.
79 If you have linked libgd with freetype, then you might also need
80 either --with-freetype-lib or --with-freetype2-lib.
81
82
83 Installing
84 ----------
85 Put the executable file 'cvsgraph' somewhere where you think it should go.
86 Normally this would be "/usr/local/bin" or "/usr/bin". The configuration file
87 ought to be put in "/usr/local/etc" or "/etc". The exact position can be
88 overriden on the commandline anyway. Edit the configuration file to your liking
89 and you should be all set.
90
91
92
93 Running CvsGraph
94 ----------------
95 Do *NOT* execute the program directly from a webserver. Direct execution would
96 be very insecure. Make a wrapper cgi-script in php, perl, or whatever you
97 normally use. The easiest way is to get the ViewCVS package from their website
98 at http://viewcvs.sourceforge.net and follow the instructions.
99
100 Alternately, you can hack the 'cvsweb' package to call CvsGraph. There are
101 several scripts and patches available from the CvsGraph homepage (see below for
102 address). However, the scripts are no longer maintained because ViewCVS has
103 native support now.
104
105 To generate an image do something like:
106 $ cvsgraph -r /home/to/repository -m module -o mygraph.png myfile.c,v
107
108 This generates a revison/branch image of the rcs file 'myfile.c,v' and puts it
109 into 'mygraph.png'. The '-r' option is the path to the repository *located and
110 accessible* on your filesystem. The '-m' is the module in the repository. Note
111 that the extension of the file ends with ",v".
112
113 Just to make it clear: You cannot make images from a cvs-repository over the
114 internet as if you were using cvs. The repository files
115 must be on a locally mounted filesystem. However, you
116 can use cvsup or rsync to get a repository to your
117 local filesystem and make then image from there.
118
119 Type 'cvsgraph -h' to get a full list of options. If the output is not given
120 (no '-o'), then the output is written to standard output.
121
122 Please read the manual pages cvsgraph(1) and cvsgraph.conf(5) for more
123 information on execution and configuration.
124
125
126
127 Todo
128 ----
129 - do a better job in making a layout (auto moving branches and rubber banding
130 revision-connectors to make place)
131
132 - draw only a part or parts of the tree.
133
134
135 License
136 -------
137 CvsGraph is distributed under GNU GPL v2. See 'LICENSE' for more information.
138
139
140
141 Contact
142 -------
143 HomePage: http://www.akhphd.au.dk/~bertho/cvsgraph
144 E-mail: cvsgraph@akhphd.au.dk
145
146 Greetings Bertho
147

  ViewVC Help
Powered by ViewVC 1.1.0 with CvsGraph 1.7.0