[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Branch graphing tool

From: Daniel Patterson <danpat_at_danpat.net>
Date: 2004-10-12 13:09:39 CEST

Hello all,

  I've whipped up a quick tool to draw graphs of branches of things
  from a Subversion repository. It uses the Perl SWIG bindings.

  Output is GraphViz "dot" format.

  It's available here (it's quite short):

    http://danpat.net/~danpat/svn-graph/svn-graph.pl

  I ran it against the Subversion repository, and the output is:

    http://danpat.net/~danpat/svn-graph/graph.dot
    http://danpat.net/~danpat/svn-graph/graph.png [warning: 19908x1073
pixels, 120kb 2 bit]

  The far right of the image is quite interesting (all the 1.1.x release
branching and tagging).

  There is still quite a lot of noise, and the representation of how
things are branched
  from "/trunk" is far from optimal (hence the great big flat diagram),
but it's a start.

  In theory, you should be able to run it against any node you like, it
knows nothing about
  /tags, /branches, etc, it's just following copyfrom history.

  On the todo list:
    - generate "codelines" and show all revisions
    - work out if things are branches or tags (tags don't change?) and
draw them different
    - make branches appear off a codeline at the right place, not all
from "/trunk"
    - work out how to handle mixed-revision branches....(ignore contents?)
    - understand parent copies when looking at a node deeper in the tree
      (i.e. show graph of /trunk/asdf/foo, works when svn cp /trunk
/branches/release_1_prep)
    - double-links appearing (blindly pushing already stored nodes....)

daniel

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Wed Oct 13 01:13:00 2004

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.