Monday, April 23, 2012

View mercurial history with straightline development smashed

I'm interested in viewing the topology of my branches, ideally in a pretty way (a la graphlog). For example I want to see how many (open) branches there are, when they split, the last time they merged to and from each other, etc. I am not interested in all the merges between them, nor straight line development on each branch.



This is useful when looking at forks on bitbucket for example. Github's network graph helps, but often the branch structure is drowned out by straightline development and/or frequent merges.



I thought that perhaps I could use revsets like



hg glog --rev "head() or merge() or branch_points()"


but then glog shows all revisions in between, not to mention the fact that I couldn't figure out how to specify branch_points() i.e. revisions which have more than one child.



Is there an extentsion for mercurial (or another DVCS) which can approximate my desires? If not is there a better way to get this information?





No comments:

Post a Comment