/[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.2, Sat Feb 24 21:49:17 2001 UTC revision 1.12, Thu Feb 14 23:18:10 2002 UTC
# Line 1  Line 1 
1  CvsGraph 1.0.1  CvsGraph 1.2.0, 14-Feb-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:  - The entire tree can now be drawn upside-down. This is usefull if you have
14          * RedHat Linux 6.[12] and 7.0    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 and gd-1.8    configured value.
18  - CvsGraph generates only gifs for old versions of gd and only png and jpeg for    The imagemap generation also supports this, so you will still be able to point
19    newer version of gd.    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    - It is now possible to draw the connector lines between the boxes thicker
56      by setting thick_lines to something else than 1. Maximum thickness is
57      limited to lines of 11 pixels wide.
58    
59    
60    
61  Compiling  Compiling
62  ---------  ---------
63  Go to a directory of your choice, unpack the package and cd into the newly  
64  create directory:  create directory:
65          $ cd /where/ever/you/want          $ cd /where/ever/you/want
66          $ tar xzf cvsgraph-1.0.1.tar.gz          $ tar xzf cvsgraph-1.2.0.tar.gz
67          $ cd cvsgraph-1.0.1          $ cd cvsgraph-1.2.0
68            $ ./configure
 Edit the Makefile to suit your needs and run:  
69          $ make          $ make
70    
71  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
72  current directory.  current directory.
73    
74    NOTE:   The GD library is required for CvsGraph to function. Get it from
75            http://www.boutell.com, compile it and use either --with-gd-lib=DIR
76            and --with-gd-inc=DIR to specify its location. You might also have
77            to use --with-z-inc, --with-z-lib and --with-png-inc, --with-png-lib
78            for gd versions 1.6 and higher.
79            If you build with static libgd (i.e. libgd.a) and already have
80            libpng.so and/or libjpeg6b.so (i.e. dynamic), then you might want to
81            try to trick configure into adding these libs to the tests by adding
82            commandline options '--with-png-lib=.' and '--with-jpeg-lib=.'.
83            If you have linked libgd with freetype, then you might also need
84            either --with-freetype-lib or --with-freetype2-lib.
85    
86    
87    
88  Installing  Installing
# Line 50  Line 99 
99  ----------------  ----------------
100  Do *NOT* execute the program directly from a webserver. Direct execution would  Do *NOT* execute the program directly from a webserver. Direct execution would
101  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
102  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
103    at http://viewcvs.sourceforge.net and follow the instructions.
104    
105    Alternately, you can hack the 'cvsweb' package to call CvsGraph. There are
106    several scripts and patches available from the CvsGraph homepage (see below for
107    address). However, the scripts are no longer maintained because ViewCVS has
108    native support now.
109    
110  To generate an image do something like:  To generate an image do something like:
111          $ 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
112    
113  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
114  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
115  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
116  that the extension of the file ends with ",v".  that the extension of the file ends with ",v".
117    
118    Just to make it clear:  You cannot make images from a cvs-repository over the
119                            internet as if you were using cvs. The repository files
120                            must be on a locally mounted filesystem. However, you
121                            can use cvsup or rsync to get a repository to your
122                            local filesystem and make then image from there.
123    
124  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
125  (no '-o'), then the output is written to standard output.  (no '-o'), then the output is written to standard output.
126    
127    Please read the manual pages cvsgraph(1) and cvsgraph.conf(5) for more
128    information on execution and configuration.
129    
130    
131    
132  Todo  Todo
133  ----  ----
 - 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  
134  - 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
135    revision-connectors to make place)    revision-connectors to make place). A start is made, but this is not very
136  - redo the entire code :-) All good programs are written twice (at least). The    functional yet.
137    structure is a real mess, but that is the price for hacking away without a  
138    real programming strategy...  - draw only a part or parts of the tree.
139    
140    
141    
142  License  License
143  -------  -------
144  CvsGraph is distributed under GNU GPL v2. See 'LICENCE' for more information.  CvsGraph is distributed under GNU GPL v2. See 'LICENSE' for more information.
145    
146    
147    

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.12

  ViewVC Help
Powered by ViewVC 1.1.0 with CvsGraph 1.7.0