/[CvsGraph]/cvsgraph/README
ViewVC logotype

Diff of /cvsgraph/README

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

revision 1.1, Tue Feb 20 12:07:03 2001 UTC revision 1.15, Sat Jul 20 00:48:16 2002 UTC
# Line 1  Line 1 
1  CvsGraph 1.0.0  CvsGraph 1.3.0, 20-Jul-2002
2  ==============  ===========================
3  CvsGraph creates a graphic representation of the revisions and branches in a  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  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  could not find something right away on the web and decided that it was time to
# Line 8  Line 8 
8    
9    
10    
11  Notes  New in this version
12  -----  -------------------
13  - I only tested it with:  - Implement a workaround for browsers that do not understand unordered
14          * RedHat Linux 6.[12] with 2.2.16.    y-coordinates in the imagemap when generated upside down.
15          * cvs-1.10  
16          * rcs-5.7  - Fix the slowness of CvsGraph when parsing very large (typically -kb files)
17          * gd-1.3 (!)    by bypassing the parsing of the actual deltatext. On my machine (K6-2/500/256M
18    and have (yet) no clue wheter other systems will like my writing.    it makes a difference of 7.5s vs 0.04s on a 93MByte file, without counting
19  - CvsGraph only generates (sort of) gifs at the moment because of an old    disk-overhead; with disk-overhead it takes 12.5s).
20    version of libgd. You are welcome to change this (shouldn't be too hard).    Downside is that the logentry cannot be expanded if the file is not parsed in
21      full (see below). 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    
39    
40  Compiling  Compiling
41  ---------  ---------
42  Go to a directory of your choice, unpack the package and cd into the newly  
43  create directory:  create directory:
44          $ cd /where/ever/you/want          $ cd /where/ever/you/want
45          $ tar xzf cvsgraph-1.0.0.tar.gz          $ tar xzf cvsgraph-1.3.0.tar.gz
46          $ cd cvsgraph-1.0.0          $ cd cvsgraph-1.3.0
47            $ ./configure
 Edit the Makefile to suit your needs and run:  
48          $ make          $ make
49    
50  This should do the trick and you have an executable file 'cvsgraph' in the  This should do the trick and you have an executable file 'cvsgraph' in the
51  current directory.  current directory.
52    
53    NOTE:   The GD library is required for CvsGraph to function. Get it from
54            http://www.boutell.com, compile it and use either --with-gd-lib=DIR
55            and --with-gd-inc=DIR to specify its location. You might also have
56            to use --with-z-inc, --with-z-lib and --with-png-inc, --with-png-lib
57            for gd versions 1.6 and higher.
58            If you build with static libgd (i.e. libgd.a) and already have
59            libpng.so and/or libjpeg6b.so (i.e. dynamic), then you might want to
60            try to trick configure into adding these libs to the tests by adding
61            commandline options '--with-png-lib=.' and '--with-jpeg-lib=.'.
62            If you have linked libgd with freetype, then you might also need
63            either --with-freetype-lib or --with-freetype2-lib.
64    
65    
66    
67  Installing  Installing
# Line 51  Line 78 
78  ----------------  ----------------
79  Do *NOT* execute the program directly from a webserver. Direct execution would  Do *NOT* execute the program directly from a webserver. Direct execution would
80  be very insecure. Make a wrapper cgi-script in php, perl, or whatever you  be very insecure. Make a wrapper cgi-script in php, perl, or whatever you
81  normally use. A nice way is to hack the 'cvsweb' package to call CvsGraph.  normally use. The easiest way is to get the ViewCVS package from their website
82    at http://viewcvs.sourceforge.net and follow the instructions.
83    
84    Alternately, you can hack the 'cvsweb' package to call CvsGraph. There are
85    several scripts and patches available from the CvsGraph homepage (see below for
86    address). However, the scripts are no longer maintained because ViewCVS has
87    native support now.
88    
89  To generate am image do something like:  To generate an image do something like:
90          $ cvsgraph -r /home/to/repository -m module -o mygraph.gif myfile.c,v          $ cvsgraph -r /home/to/repository -m module -o mygraph.png myfile.c,v
91    
92  This generates a revison/branch image of the rcs file 'myfile.c,v' and puts it  This generates a revison/branch image of the rcs file 'myfile.c,v' and puts it
93  into 'mygraph.gif'. The '-r' option is the path to the repository *located and  into 'mygraph.png'. The '-r' option is the path to the repository *located and
94  accessible* on your filesystem. The '-m' is the module in the repository. Note  accessible* on your filesystem. The '-m' is the module in the repository. Note
95  that the extension of the file ends with ",v".  that the extension of the file ends with ",v".
96    
97    Just to make it clear:  You cannot make images from a cvs-repository over the
98                            internet as if you were using cvs. The repository files
99                            must be on a locally mounted filesystem. However, you
100                            can use cvsup or rsync to get a repository to your
101                            local filesystem and make then image from there.
102    
103  Type 'cvsgraph -h' to get a full list of options. If the output is not given  Type 'cvsgraph -h' to get a full list of options. If the output is not given
104  (no '-o'), then the output is written to standard output.  (no '-o'), then the output is written to standard output.
105    
106    Please read the manual pages cvsgraph(1) and cvsgraph.conf(5) for more
107    information on execution and configuration.
108    
109    
110    
111  Todo  Todo
112  ----  ----
 - use autoconf  
 - use a newer version of libgd, or better, use ImageMagick for better control  
   over what is generated (also multiple output formats would be possible)  
 - find a way to use cvs directly instead of rcs (rlog) without the need for a  
   full checkout of the repository/module  
 - clean up the mess of finding revisions, tags and branches. The main branch  
   does not nessecarily start with revision 1.1  
113  - do a better job in making a layout (auto moving branches and rubber banding  - do a better job in making a layout (auto moving branches and rubber banding
114    revision-connectors to make place)    revision-connectors to make place). A start is made, but this is not very
115  - redo the entire code :-) All good programs are written twice (at least). The    functional yet.
116    structure is a real mess, but that is the price for hacking away without a  
117    real programming strategy...  - draw only a part or parts of the tree.
118    
119    
120    
121  License  License
122  -------  -------
123  CvsGraph is distributed under GNU GPL v2. See 'LICENCE' for more information.  CvsGraph is distributed under GNU GPL v2. See 'LICENSE' for more information.
124    
125    
126    

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.15

  ViewVC Help
Powered by ViewVC 1.1.0 with CvsGraph 1.7.0