Revision graphs can become complex. TortoiseHg does a decent job of visualizing this, for example:
However, this is a bit too much detail to conceptually grasp how the various named branches do or do not share code. What I'm looking for is a way to visualize similar graphs, but then with these requirements:
Important:
- Be similar to TortoiseHg's default visualization: use visual cues (e.g. coloring) to distinguish branches, and a visual cue to see the order of commits (e.g. newest commits at the top), and show revision numbers for nodes;
- For commits between two relevant1 split/merge commits: either condense them into one node or annotate the corresponding edge (preferred), or just hide them.
- Show more prominently which named branch a set of nodes/edges belongs to.
- Be able to select a range (period or commits).
- Give instant insight into the flow of code through branches: e.g. 1000 commits (of which 40 are splits/merges between named branches) in 8 different named branches should fit on one screen.
- Gratis.
1 Only splits/merges between named branches are relevant; splits/merges within one branch are by default not interesting to me, I care about the flow of code between named branches. An option to see the second type as well is a "Nice to have", see below.
Nice to have:
- Option to indicate splits/merges within one named branch are also important. (See 1, above.)
- See author of commits.
- Tooltip with summary of a "condensed" node/edge (see requirement above).
Is there any piece of gratis software that fits my needs? Can TortoiseHg perhaps even do it? Or should I switch to another Hg GUI that has this?