difftools, 'bzr diff --using footool', and 'diffuse'

Ian Clatworthy ian.clatworthy at internode.on.net
Tue Apr 14 04:00:51 BST 2009


Stephen Ward wrote:

> There are two general classes of diff tools:  list-oriented and tree-oriented.  
> When you have a bunch of diffs, the list-oriented tools will show them to you 
> one file at a time; the tree-oriented tools (meld, kdiff3, kompare, ...) can 
> show you the whole collection at once.  That let's you jump around between 
> files, and generally gives you a better overall picture (in my opinion).
> 
> For my own usage, I still find the plugin version provides a more natural 
> workflow; bringing up the GUI repeatedly just feels wrong to me.  But roughly 
> half of the widely-used diff tools have a list-oriented workflow, so clearly 
> this is a matter of personal preference.

Hi Stephen,

Firstly, let me say that difftools was one of the first Bazaar plugins
I ever installed and I think it rocks!

It's worth mentioning though that content filtering (e.g. eol, keywords)
complicates things. We really want diff to show the *changes that will
be committed*, i.e. the content after being "read" filtered vs what's stored.

If tree-oriented diff is using the exact working tree, it won't be showing
the ideal output. In fact, list-oriented diff will also show the less-than-ideal
output if it uses the exact working tree file, though it's probably easier to
fix the latter by asking bzrlib for the file content.

Just a heads up in case you want to consider extending difftools to address
this.

Ian C.



More information about the bazaar mailing list