1 |
CvsGraph 1.5.1, 23-Oct-2004
|
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 |
|
14 |
- Add patch from Henrik Carlqvist <henca@users.SourceForge.net>
|
15 |
* add option rev_hidenumber for disabling revision number display.
|
16 |
* add option tag_ignore_merge for disabling merge_from/merge_to display
|
17 |
if matched with tag_ignore.
|
18 |
* add resorting of branches on how many revisions they have. This saves
|
19 |
space under circumstances.
|
20 |
|
21 |
- Add option merge_findall so that merge_from/merge_to tags can have multiple
|
22 |
matches.
|
23 |
|
24 |
- Add the patches supplied by Ville Skytta <ville.skytta@iki.fi>
|
25 |
* fix spelling in the manpages and config file
|
26 |
* fix & -> & problem in config
|
27 |
* fix generics in wrapper example
|
28 |
|
29 |
- Add a fix for the zimezone problem as suggested by Henrik Carlqvist
|
30 |
<henca@users.SourceForge.net> by using the environment.
|
31 |
|
32 |
- Fix a bug in the detection of branch-numbers in the logical ,v file structure
|
33 |
(reported by Daniel Dumitrache <ddumitrache@bitdefender.com>). The branch was
|
34 |
deduced from the revision, but that would fail for revision numbers that are
|
35 |
like magic branch-numbers (x.x.0.x) because they were interpreted. These
|
36 |
revision numbers are now correctly handled.
|
37 |
|
38 |
- Added patch from Gordon Hollingworth <Gordon.Hollingworth@TTP.com> to use
|
39 |
mergepoints as implemented by CVSNT. Adapted the patch to enable both
|
40 |
tag-detected merges and mergepoints to be shows at the same time.
|
41 |
|
42 |
- Implement selection of png compression level with image_compress and enable
|
43 |
interlacing (progressive load) for both png and jpeg images with
|
44 |
image_interlace.
|
45 |
|
46 |
|
47 |
|
48 |
Compiling
|
49 |
---------
|
50 |
|
51 |
create directory:
|
52 |
$ cd /where/ever/you/want
|
53 |
$ tar xzf cvsgraph-1.5.1.tar.gz
|
54 |
$ cd cvsgraph-1.5.1
|
55 |
$ ./configure
|
56 |
$ make
|
57 |
|
58 |
This should do the trick and you have an executable file 'cvsgraph' in the
|
59 |
current directory.
|
60 |
|
61 |
NOTE: The GD library is required for CvsGraph to function. Get it from
|
62 |
http://www.boutell.com, compile it and use either --with-gd-lib=DIR
|
63 |
and --with-gd-inc=DIR to specify its location. You might also have
|
64 |
to use --with-z-inc, --with-z-lib and --with-png-inc, --with-png-lib
|
65 |
for gd versions 1.6 and higher.
|
66 |
If you build with static libgd (i.e. libgd.a) and already have
|
67 |
libpng.so and/or libjpeg6b.so (i.e. dynamic), then you might want to
|
68 |
try to trick configure into adding these libs to the tests by adding
|
69 |
commandline options '--with-png-lib=.' and '--with-jpeg-lib=.'.
|
70 |
If you have linked libgd with freetype, then you might also need
|
71 |
either --with-freetype-lib or --with-freetype2-lib.
|
72 |
|
73 |
There are often precompiled binaries for Linux, FreeBSD, NetBSD and Windows
|
74 |
(and probably other OSes too). Check your local mirror for details. I also have
|
75 |
some links on the homepage for precompiled binaries. Please do not complain to
|
76 |
me about these binaries.
|
77 |
|
78 |
|
79 |
|
80 |
Installing
|
81 |
----------
|
82 |
Put the executable file 'cvsgraph' somewhere where you think it should go.
|
83 |
Normally this would be "/usr/local/bin" or "/usr/bin". The configuration file
|
84 |
ought to be put in "/usr/local/etc" or "/etc". The exact position can be
|
85 |
overriden on the commandline anyway. Edit the configuration file to your liking
|
86 |
and you should be all set.
|
87 |
|
88 |
|
89 |
|
90 |
Running CvsGraph
|
91 |
----------------
|
92 |
Do *NOT* execute the program directly from a webserver. Direct execution would
|
93 |
be very insecure. Make a wrapper cgi-script in php, perl, or whatever you
|
94 |
normally use. There are several web-based viewers with CvsGraph support:
|
95 |
|
96 |
- ViewCVS http://viewcvs.sourceforge.net
|
97 |
- CVSweb http://www.freebsd.org/projects/cvsweb.html
|
98 |
- Chora http://www.horde.org/chora/
|
99 |
|
100 |
|
101 |
To generate an image do something like:
|
102 |
$ cvsgraph -r /home/to/repository -m module -o mygraph.png myfile.c,v
|
103 |
|
104 |
This generates a revison/branch image of the rcs file 'myfile.c,v' and puts it
|
105 |
into 'mygraph.png'. The '-r' option is the path to the repository *located and
|
106 |
accessible* on your filesystem. The '-m' is the module in the repository. Note
|
107 |
that the extension of the file ends with ",v".
|
108 |
|
109 |
Just to make it clear: You cannot make images from a cvs-repository over the
|
110 |
internet as if you were using cvs. The repository files
|
111 |
must be on a locally mounted filesystem. However, you
|
112 |
can use cvsup or rsync to get a repository to your
|
113 |
local filesystem and make then images from there.
|
114 |
|
115 |
Type 'cvsgraph -h' to get a full list of options. If the output is not given
|
116 |
(no '-o'), then the output is written to standard output.
|
117 |
|
118 |
Please read the manual pages cvsgraph(1) and cvsgraph.conf(5) for more
|
119 |
information on execution and configuration.
|
120 |
|
121 |
|
122 |
|
123 |
Contributed code
|
124 |
----------------
|
125 |
- contrib/automatic_documentation:
|
126 |
If you are interested in tag-management with respect to the correct branch
|
127 |
information, then I suggest that you take a look at the contribution from
|
128 |
Henrik Carlqvist. He submitted some server-side scripts that can manage tags
|
129 |
in a better fashion than cvs on its own.
|
130 |
|
131 |
|
132 |
|
133 |
Todo
|
134 |
----
|
135 |
- do a better job in making a layout (auto moving branches and rubber banding
|
136 |
revision-connectors to make place). A start is made, but this is not very
|
137 |
functional yet.
|
138 |
|
139 |
|
140 |
|
141 |
License
|
142 |
-------
|
143 |
CvsGraph is distributed under GNU GPL v2. See 'LICENSE' for more information.
|
144 |
|
145 |
|
146 |
|
147 |
Contact
|
148 |
-------
|
149 |
HomePage: http://www.akhphd.au.dk/~bertho/cvsgraph
|
150 |
E-mail: cvsgraph@akhphd.au.dk
|
151 |
|
152 |
Greetings Bertho
|
153 |
|