bzr explorer: diff/qlog to another branch

Ian Clatworthy ian.clatworthy at canonical.com
Wed Feb 3 01:44:39 GMT 2010


Olivier R-D wrote:
> Hi,
> 
> We have had a few discussion in my company about vcs/gui. Mainly about
> moving from svn to bzr. The main argument against the move is that a few
> workers (mainly one :-) ) do not want to miss some features of kdesvn (
> a gui for svn )

Hi Oliver,

Thanks for your questions.

> They are 2 main things, both related to the current status of the
> current branch to another branch.
> 1 - they want a tree like overview showing with colors which file has
> been updated in the current branch (committed or not) and which file has
> changed in the other branch. then clicking on the file shows the diff
> for the between branches or start an editor.  has bzr explorer such a
> thing ?.

Hmm. As a general comment, QBzr does 95% of the hard work and Explorer
is a configurable shell that launches QBzr commands. :-) So if QBzr can
do what you want, then you can expose that action on a toolbar or in the
toolbox in Explorer.

Having said that, the repository view in Explorer has tabs for "Local
Changes" and "Missing Revisions" that provide short summaries when
comparing a branch with its *parent*. It sounds like you want to compare
to an arbitrary branch though? How arbitrary is it?

It would be nice if "Local Changes" and "Missing Revisions" had icons on
them for launching qlog should the results in more detail. Please raise
a bug for that if it would help.

> 2- they want to get a short overview of the differences between 2
> branches  like : "bzr qlog . :parent" og better a "bzr qlog . :team
> branch" ("where team_branch is shortcut to a central repository which
> might not be the parent). Is this integrated in bzr explorer ?

You can select 2 branches in a repository view and select the 'Log'
action in the button bar to compare them. (In contrast, Log on the
Toolbar will always Log the fully repository.)

> In resume I feel bzr explorer is really oriented about a local
> development environment and does not focus much about showing difference
> with other branches. I would expect bzr explorer to remember a list of
> branches it should monitor for changes and present the changes to the
> users in one form or another.

It is possible to compare a local branch with a remote one using qlog
(and qdiff?). It's usually better though to keep local mirrors of
interesting remote branches and to compare against them. The issue then
becomes one of keeping those mirrors current. There are a few options
here ...

Firstly, bzrtools has a multi-pull command that will pull all branches
it finds under a directory. Your could add that to your toolbar for
repositories or toolbox. (Configurable, kind-specific toolbars landed in
Explorer yesterday!)

Secondly, I'd like to be able to configure a "hot-list" of branches
inside Explorer. I'd then like a magic menu action that pulled all of
them. I'd then hit that magic button each morning. In my case, I'd use
that to pull the latest trunks and release branches of various projects
I track or work on. It's not a difficult feature to add but I don't have
time right now to add it.

> btw I am not blaming anybody I just wanted to report some thoughts to
> the bzr explorer developer who seem motivated :-). I am myself more a
> qbzr user (mainly qlog and qdiff)

No problem. In most cases, the first step is to make QBzr do what you
want. Adding the feature into explorer in then trivial in many cases.

Ian C.



More information about the bazaar mailing list