bzr questions

John A Meinel john at
Wed Sep 28 16:49:53 BST 2005

Jordan Breeding wrote:
> Will bzr take less time to do a `bzr branch` on something like 
> once the new weave stuff is in place?

In general, it should, though I'm not sure how much of the branch stuff 
will copy the file intact, and how much it will flatten it, and then 
repack it into a weave.

The big difference is that there is less data to copy. On a current tree, there is 47M of old texts. After weaving, I believe this 
drops down to about 15M.

So in pure amount of data to be copied, it should be faster.

Also, Aaron just introduced some code to make "bzr branch" use 
hardlinks. Which could also be used in the new weave formats. Making 
local branching a lot cheaper.

Remote branching is still expensive.

There are a couple of factors, though. Because in bzr each tree contains 
the full history, the older the tree, the more expensive it is to branch.
There is the possibility of creating cheap branches, though. Where it 
doesn't actually have to copy all of the history into the local branch, 
but might keep a reference to where the rest of history is. It is tricky 
to get this right, though, so it hasn't been implemented yet. I don't 
know if this is a 1.0 target or not, but certainly some people desire it.

> After doing `bzr log | less` and then quitting early on I get:
> bzr: broken pipe
> Is this just accepted as normal or will this error be gone in the  future?

I think it is acceptable. Because try this:

cvs log | less

I get the following:
$ cvs log | less
cvs log: Logging .
cvs log: Logging CVSROOT
cvs log: Logging Distance
cvs [log aborted]: received broken pipe signal

Most commands that aren't able to print out all of their text complain 
at least a little about the broken pipe.

'cat' and 'zcat' don't seem to complain. Do you feel there is a reason 
not to?

> Thanks,
> Jordan

Going back to "log" functionality, you might be interested in my 
"shortlog" plugin, available here:

Basically, it sets the "--forward" option, as well as defaulting to 
"--revision -10..", and "--short".

So just typing "bzr log" prints out the last 10 logs, in the forward 
direction, in a more compact form.
This fills about one screen for me, and lets me know what has been changing.

You can still do "bzr log -r .. --long" to print out everything in long 
form (though there isn't a --reverse flag to print it backwards yet).

I use log all the time now, with my plugin it makes it nice and simple 
to keep track of what is going on with other people's branches.

Having "bzr log" print out all logs may fit the least surprise 
qualification, but to me it is a real pain.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 253 bytes
Desc: OpenPGP digital signature
Url : 

More information about the bazaar mailing list