Login | Register
My pages Projects Community openCollabNet

Project home

If you were registered and logged in, you could join this project.

Summary SvnMapper gives you a map to navigate your subversion branches.
Category scm
License BSD License
Owner(s) janm

... mapping your Subversion repository.

Lost track of your Branches?

If you are a developer and use subversion for source control, you may want to use SvnMapper to regain control of your branches. Download SvnMapper for Windows, requires .Net 2.0.

The Problem

If you are part of a large development team and you are using Subversion as your source revision system you are bound to do extensive branching to be able to:

  • Add several new features at the same time without bothering every other developer with your changes as they come.
  • Fix bugs in old versions of the source, which allows your customers to get bugfixes without getting new (buggy) features.
  • To be able to commit your daily, work which does not even compile, without interrupting the important work of your colleagues
  • ...the list goes on...

If you are not using branches you better start using them now.

While subversion is very efficient at making branches it is not very good at managing them. This we discovered at Kamstrup while using Subversion in a team of 20 developers. At some point we started spending quite some time just communicating which changes were comitted on what branches, and making bad choices on wrong assumptions about how our branch layout was.

The Solution

We spent some time looking for a decent tool for doing this, but failed to find something which met our demands. Thus we invented the SvnMapper, a tool that could visualize our branches, changes and merges to us.

In SvnMapper a branch is displayed as a horizontal line starting to the left and moving to the right. Each pixel on a branch corresponds to a revision in the Subversion repository, and each red pixel on a branch corresponds to a commit.


  • Move branches around You can move branches vertically by drgging them with your mouse. Move the entire sub-branch by left-clicking or a single branch by left-clicking + SHIFT
  • Name your branches Give your branch a name, and move the name to the right spot.
  • View commits Select a branch to view a list the commits of that branch.
  • Inspect commits Double click a commit to inspect the list of changes in a commit.
  • Inspect changes with Tortoise Double click a change to inspect the difference with Tortoise Diff (if you have it installed).
  • Locate parent branches Select a branch to view the list of parent branches (the branches that this branch originates from)
  • Hide Branches Hide branches that are not interesting.
  • Add merge arrows Annotate your branches with arrows that show merge-sites.
  • Scroll Navigation Scroll navigate by clicking the eft mouse button on any empty space.
  • Print your branchers Make nice printouts to show your boss.

SvnMapper was made by janm during his time at Kamstrup A/S. When he stopped working with Kamstrup it was decided that SvnMapper should be freely available to the public at no charge. The source code is freely available and any contributions welcome. SvnMapper is licensed under a BSD license, which you may find here.