Gitk for Bzr?

Mark Williamson mark.williamson at cl.cam.ac.uk
Sun Jan 20 02:14:36 GMT 2008


Hi Andrew,

I had a crack at implementing some of the stuff you suggested for my Push Me 
Pull You tool.

> 2) I've often found myself hunting around trying to find the patch that
> introduced a change. gannotate is no help here; I need to see the
> changes, not the current state and the revisions that happen to be the
> most recent to have touched something
>
> 3) which leads me to kinda wanting a fusion of gannotate and visualize,
> something by which you could, given a file, browse forward and back
> along the revision timelines and see the either a) annotated or probably
> more useful just b) the result of the changes shown as highlighted lines
> int the file. By itself that's pretty useless, but if the forward/back
> function was zippy it'd be very handy.

Here's a screeshot:
http://www.cl.cam.ac.uk/~maw48/pmpu/annotate_with_history.png

The screenshot is of the tool browsing a Mercurial repository but there's 
support in my development tree (and my latest dev snapshot tarball) for 
similar functionality under bzr and git.

The Newer(est) and Older(est) buttons let you step through the history of the 
file, seeing an annotated rendition of each version to have existed.  
Revision IDs (in the hg / git case) or Revision Numbers (in bzr's case) will, 
if you switch them on, appear as hyperlinks; clicking one of these will take 
you back to the file as-of that revision.

> 4) couple that with some multi dimensional searching (ie maybe {search
> titles, commit messages, or text introduced in current change, ...} who
> knows) to speed the jumping around and it'd be bloody amazing.

Probably not quite the same thing as what you're suggesting, but pmpu allows 
you to filter the current revision text by user name, revision, text 
contents, etc.  You can either see the results of your search in context or 
hide the non-matching lines completely.

The annotate feature seems to work now and I've just started using it to track 
down bugs in code myself.  It could do with a little more polish for visual 
appearance and consistency between different VCS backends and then it should 
end up in the 0.3 release.  I'll announce that on this mailing list in the 
next week or two, I expect.

Cheers,
Mark

-- 
Push Me Pull You - Distributed SCM tool (http://www.cl.cam.ac.uk/~maw48/pmpu/)



More information about the bazaar mailing list