/[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.11, Wed Jan 9 00:28:36 2002 UTC
# Line 1  Line 1 
1  CvsGraph 1.0.0  CvsGraph 1.2.0, 19-Dec-2001
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:  - The entire tree can now be drawn upside-down. This is usefull if you have
14          * RedHat Linux 6.[12] with 2.2.16.    many revisions in a trunk and want to see the latest first. The configuration
15          * cvs-1.10    includes an option 'upside_down' with a boolean argument. You can override the
16          * rcs-5.7    default value on the command-line with the '-u' switch, which will negate the
17          * gd-1.3 (!)    configured value.
18    and have (yet) no clue wheter other systems will like my writing.    The imagemap generation also supports this, so you will still be able to point
19  - CvsGraph only generates (sort of) gifs at the moment because of an old    and shoot on and between the revisions.
20    version of libgd. You are welcome to change this (shouldn't be too hard).  
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  Compiling
58  ---------  ---------
59  Go to a directory of your choice, unpack the package and cd into the newly  
60  create directory:  create directory:
61          $ cd /where/ever/you/want          $ cd /where/ever/you/want
62          $ tar xzf cvsgraph-1.0.0.tar.gz          $ tar xzf cvsgraph-1.2.0.tar.gz
63          $ cd cvsgraph-1.0.0          $ cd cvsgraph-1.2.0
64            $ ./configure
 Edit the Makefile to suit your needs and run:  
65          $ make          $ make
66    
67  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
68  current directory.  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  Installing
# Line 51  Line 94 
94  ----------------  ----------------
95  Do *NOT* execute the program directly from a webserver. Direct execution would  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  be very insecure. Make a wrapper cgi-script in php, perl, or whatever you
97  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
98    at http://viewcvs.sourceforge.net and follow the instructions.
99    
100  To generate am image do something like:  Alternately, you can hack the 'cvsweb' package to call CvsGraph. There are
101          $ cvsgraph -r /home/to/repository -m module -o mygraph.gif myfile.c,v  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  This generates a revison/branch image of the rcs file 'myfile.c,v' and puts it
109  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
110  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
111  that the extension of the file ends with ",v".  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  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.  (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  Todo
128  ----  ----
 - 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  
129  - 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
130    revision-connectors to make place)    revision-connectors to make place)
 - redo the entire code :-) All good programs are written twice (at least). The  
   structure is a real mess, but that is the price for hacking away without a  
   real programming strategy...  
131    
132    - draw only a part or parts of the tree.
133    
134    
135  License  License
136  -------  -------
137  CvsGraph is distributed under GNU GPL v2. See 'LICENCE' for more information.  CvsGraph is distributed under GNU GPL v2. See 'LICENSE' for more information.
138    
139    
140    

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

  ViewVC Help
Powered by ViewVC 1.1.0 with CvsGraph 1.7.0