Fixing rebase rather than avoiding it

Ben Finney ben+bazaar at benfinney.id.au
Thu Mar 4 08:51:33 GMT 2010


Talden <talden at gmail.com> writes:

> Why do we always seem to divide into groups of extremes - maybe it's
> only the extremes that a vocal.

I deny that strenuously!

> One group seems to consider the merged branch-history burdensome and
> would prefer to always remove it. The other group basks in deific glee
> at their tools refusal to allow the editing of the DAG (regardless
> whose DAG it is).
>
> There must be some middle ground (though I think I'm about to miss
> it)...

I would think the correct middle ground is:

* Always record all changes (don't rewrite history), and

* Allow any user to view that history in any consistent manner they
  choose (with sensible defaults for those who don't want the burden of
  choosing).

I don't think I have seen a justification of rewriting history that is
anything other than:

* “I don't like to see existing history in that manner” (in which case,
  the problem is to allow *that user* to see it a different way), or

* “I don't want anyone to see existing history in that manner” (that's
  not for you to decide on behalf of everyone else).

> It seems to me that making Bazaar a more flexible tool in this manner
> will only be a bad thing if we harm the UI for those that do not wish
> to use it.

The problem always comes down to “whoops I crossed the line between
rebase-safe and not-rebase-safe”, and it's always *someone else* paying
that price, some indeterminate number of times and some indeterminate
point in the future.

The problem needs to be avoided at the source, by not having *any*
operation make *any* revision incompatible with other branches that
share ancestry.

> In every other way it makes Bazaar more inclusive. Bazaar supports
> many workflows now and more are supported with this functionality -
> with it Bazaar will be useable/acceptable in more projects.

I think history-viewing flexibility is the answer: always keep all
revisions, and allow each user to filter their view of history or drill
down to see it all if they choose.

-- 
 \       “My business is to teach my aspirations to conform themselves |
  `\              to fact, not to try and make facts harmonise with my |
_o__)                   aspirations.“ —Thomas Henry Huxley, 1860-09-23 |
Ben Finney




More information about the bazaar mailing list