How can we ensure Bazaar (bzr) remains active?

Jelmer Vernooij jelmer at samba.org
Tue Sep 22 01:02:31 UTC 2015


On Mon, Sep 21, 2015 at 11:14:18AM +0300, Eli Zaretskii wrote:
> > From: Torsten Bronger <bronger at physik.rwth-aachen.de>
> > Date: Mon, 21 Sep 2015 09:41:15 +0200
> > 
> > I think one should go even one step further.  From
> > <https://www.stationary-traveller.eu/pages/bzr-a-retrospective.html>:
> > 
> >     Could bzr have a second life as another UI for the Git file
> >     format, becoming part of the Git world rather than competing
> >     with it? Sure, I guess. Several people, including myself, have
> >     suggested this in the past. It would however still require a
> >     fair amount of work - bzr-git is unfinished. If it's just the UI
> >     you're after then it is probably easier to simply build a
> >     bzr-like Git UI from scratch, directly on top of something like
> >     libgit2 or Dulwich.
> 
> I question the validity of that conclusion.  Dulwich is IMO out, as
> it's too slow, even when parts of it are in C.  I used to use bzr-git
> quite a lot, and found it unbearably slow for any significant fetch
> from a Git repository.
Dulwich is definitely slower than C Git, but is not the main cause for
bzr-git's slowness.

bzr-git is slow because it has to do format conversion - it can't
simply copy the pack file like "plain" Dulwich and C Git can. bzr-git
fetches from a Git format repository into a Bazaar format repository.

This means that when bzr-git fetches it has to recreate every Git
fulltext by applying the Git delta chain to create that fulltext, and
then insert it into the Bazaar repository (which involves generating
a pack filled with deltas in Bazaar's format).

Cheers,

Jelmer
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 473 bytes
Desc: Digital signature
URL: <https://lists.ubuntu.com/archives/bazaar/attachments/20150922/c5d9f9e2/attachment.pgp>


More information about the bazaar mailing list