questions from a new bzr user

John Arbash Meinel john at arbash-meinel.com
Fri May 5 03:23:07 BST 2006


Ramon Diaz-Uriarte wrote:
> Dear All,
> 
> I've recently started using bzr, after considering several other
> options (some of my tribulations and reasons for choice are listed at
> http://ligarto.org/rdiaz/VersionControl.html). bzr is a very nice
> piece of software, and is actually quite enjoyable to use!!!

Just some comments about comments you made:


Line-by-line history of a file

        * hg annotate
        * darcs annotate
        * monotone:
http://lists.gnu.org/archive/html/monotone-devel/2005-04/msg00047.html
        * svk blame
        * bzr: not available

'bzr annotate' has been around for quite some time. And if you install
the 'gannotate' plugin:
http://panoramicfeedback.com/opensource/bzr/gannotate/

You can get a really nice graphical annotation. Which puts up the log
information at the bottom, and colors the lines based on age.

Add a directory (nicer if recursively)

        * monotone: see 2.6: mtn add

I'm not sure why you are only listing monotone. I'm not sure about the
others but just plain "bzr add" adds everything underneath the current
working directory.

Documentation

        * bzr: pss

I'm guessing that 'pss' is not good.


"Has support from Connectiva Ltd"

That should be Canonical, not Connectiva.


I'm curious what "serious bugs remaining" you believe we have. As far as
I'm aware, we don't have many serious bugs. More lack of features which
we wish to have. I suppose there are some performance issues, but a
whole lot of them will be addressed by the 0.8 release in a short while
(< 2 weeks).


One thing I would like to mention about Darcs, which was one of the
show-stoppers for me. Was that it doesn't maintain an accurate history.
Because of the "theory of patches", when you merge someone else, it can
actually change the history of your branch.

As an example:
 I committed patch "A, B, C" in my branch, and then I merge you, where
you committed patch "D". In bzr, this would show up as:

  A
  | \
  B  D
  |  |
  C  |
  | /
  E

My understanding of Darcs, is that it might decide to commute patch C &
D, so that you end up with

  A
  |
  B
  |
  D
  |
  C

This also has deeper implications when it comes to revision integrity.
Because C might be changed by applying D, one cannot create a
cryptographic signature for C. Inherent in the model is that revisions
change based on what other revisions you have applied.
I believe the benefit of this, is that you have more conflict free
merges. The downside is a very large lack of stability.

I do believe darcs has a lot of very nice things going for it. And I
think we should keep and eye on it, and see what things we can
incorporate. But I thought you should be aware of something I considered
important, that I didn't see mentioned.

But nice to see your 2006-05-05 post. Welcome to the group.

John
=:->

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 254 bytes
Desc: OpenPGP digital signature
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20060504/32e0057b/attachment.pgp 


More information about the bazaar mailing list