32

Are you aware of any tool that creates diagrams showing the branch/merge activity in a SVN repository?

We've all seen these diagrams in various tutorials. Some good, some not so good. Can they be created automatically (or maybe with a little prodding -- you might have to tell it what if your branching philosophy is dev-test-prod, branch-per-release, etc.)

I'm looking at the TortoiseSVN Revision Graph right now, but it has more detail than I want and the wrong layout.


Orion, thanks for the response. I guess since branching and merging are more a convention for managing files in a repository than a "built in feature of SVN, it would be pretty tough. I'll stick with the poorly-drawn diagram at the top of the whiteboard in our team's office.

Matt Miller
  • 3,501
  • 5
  • 27
  • 26
  • 1
    Looks like there are some new tools being developed to address this. Has anyone used the tools Jerome and Rolle mention? – Matt Miller May 19 '09 at 14:23

4 Answers4

23

Check this out SvnMapper from Tigris.org

enter image description here

Inder Kumar Rathore
  • 39,458
  • 17
  • 135
  • 184
Rolle
  • 297
  • 3
  • 5
  • This is a Windows application and seems to be the closest to what you are looking for. – Steven Hepting Feb 03 '10 at 22:41
  • 2
    I just sadly found it seems to choke on ssh:/// url's. – Stephane Gosselin Jun 18 '11 at 07:28
  • 3
    Looks good, but... couldn't make it work with svn:// urls – marapet Oct 26 '11 at 13:24
  • 3
    couldnt make it work with https:// urls – alvin Aug 02 '13 at 08:29
  • I was able to get it to work with https. We're using VisualSVN as our SVN server. At one point I got a prompt from SvnMapper that we were using a self-signed cert. Also, I had to enable SVN authentication (instead of Windows auth) on the SVN server. I wasn't really happy with the app though. I assumed it would automatically draw the merge arrows, you have to interpret the data and annotate the merges yourself. – Walter Stabosz May 01 '15 at 15:48
9

Have a look at Subclipse from Tigris.org

enter image description here

Inder Kumar Rathore
  • 39,458
  • 17
  • 135
  • 184
8

Well, you can use git and git-svn. First, clone your SVN repository into a Git repository, like this:

git svn init "http://host/repo/location/trunk"

Then, use the command:

gitk --all

From there, you'll see a nice graph of the revision history. Of course, this assumes you have git and git-svn set up correctly and are comfortable on the command line.

One of the benefits of tracking source through Git is that the merging history is tracked through content modification, not chronological order or branch name. Therefore, it doesn't matter if your SVN repository has no merging history.

If the gitk revision graph isn't sufficient, you may be able to pull the repo history from Git directly and make your own graph.

m104
  • 1,118
  • 7
  • 6
  • re: `Git ... merging history is tracked through content modification ...` Really? How can it tell the difference between a person editing the two branches identically and a merge from one branch to another? – Jesse Chisholm Jan 11 '16 at 17:58
2

prior to SVN 1.5 (which has been out all of a month or so), it didn't track merges at all, so the bits where branches 'reconnect' to the trunk are impossible for it to do anyway

Orion Edwards
  • 121,657
  • 64
  • 239
  • 328