1 |
CvsGraph 1.0.1
|
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 |
Notes
|
12 |
-----
|
13 |
- I only tested it with:
|
14 |
* RedHat Linux 6.[12] and 7.0
|
15 |
* cvs-1.10
|
16 |
* rcs-5.7
|
17 |
* gd-1.3 and gd-1.8
|
18 |
- CvsGraph generates only gifs for old versions of gd and only png and jpeg for
|
19 |
newer version of gd.
|
20 |
|
21 |
|
22 |
|
23 |
Compiling
|
24 |
---------
|
25 |
Go to a directory of your choice, unpack the package and cd into the newly
|
26 |
create directory:
|
27 |
$ cd /where/ever/you/want
|
28 |
$ tar xzf cvsgraph-1.0.1.tar.gz
|
29 |
$ cd cvsgraph-1.0.1
|
30 |
|
31 |
Edit the Makefile to suit your needs and run:
|
32 |
$ make
|
33 |
|
34 |
This should do the trick and you have an executable file 'cvsgraph' in the
|
35 |
current directory.
|
36 |
|
37 |
|
38 |
|
39 |
Installing
|
40 |
----------
|
41 |
Put the executable file 'cvsgraph' somewhere where you think it should go.
|
42 |
Normally this would be "/usr/local/bin" or "/usr/bin". The configuration file
|
43 |
ought to be put in "/usr/local/etc" or "/etc". The exact position can be
|
44 |
overriden on the commandline anyway. Edit the configuration file to your liking
|
45 |
and you should be all set.
|
46 |
|
47 |
|
48 |
|
49 |
Running CvsGraph
|
50 |
----------------
|
51 |
Do *NOT* execute the program directly from a webserver. Direct execution would
|
52 |
be very insecure. Make a wrapper cgi-script in php, perl, or whatever you
|
53 |
normally use. A nice way is to hack the 'cvsweb' package to call CvsGraph.
|
54 |
|
55 |
To generate an image do something like:
|
56 |
$ cvsgraph -r /home/to/repository -m module -o mygraph.gif myfile.c,v
|
57 |
|
58 |
This generates a revison/branch image of the rcs file 'myfile.c,v' and puts it
|
59 |
into 'mygraph.gif'. The '-r' option is the path to the repository *located and
|
60 |
accessible* on your filesystem. The '-m' is the module in the repository. Note
|
61 |
that the extension of the file ends with ",v".
|
62 |
|
63 |
Type 'cvsgraph -h' to get a full list of options. If the output is not given
|
64 |
(no '-o'), then the output is written to standard output.
|
65 |
|
66 |
|
67 |
|
68 |
Todo
|
69 |
----
|
70 |
- use ImageMagick for better control over what is generated (also multiple
|
71 |
output formats would be possible)
|
72 |
- find a way to use cvs directly instead of rcs (rlog) without the need for a
|
73 |
full checkout of the repository/module
|
74 |
- clean up the mess of finding revisions, tags and branches. The main branch
|
75 |
does not nessecarily start with revision 1.1
|
76 |
- do a better job in making a layout (auto moving branches and rubber banding
|
77 |
revision-connectors to make place)
|
78 |
- redo the entire code :-) All good programs are written twice (at least). The
|
79 |
structure is a real mess, but that is the price for hacking away without a
|
80 |
real programming strategy...
|
81 |
|
82 |
|
83 |
|
84 |
License
|
85 |
-------
|
86 |
CvsGraph is distributed under GNU GPL v2. See 'LICENCE' for more information.
|
87 |
|
88 |
|
89 |
|
90 |
Contact
|
91 |
-------
|
92 |
HomePage: http://www.akhphd.au.dk/~bertho/cvsgraph
|
93 |
E-mail: cvsgraph@akhphd.au.dk
|
94 |
|
95 |
Greetings Bertho
|
96 |
|