Bazaar developers’ blog

October 27, 2009

Ten reasons to switch to Bazaar

Filed under: Uncategorized — Ian Clatworthy @ 3:05 am
Tags: , , , ,

Are you a Bazaar fan and need some help explaining to others why Bazaar is cool? I published a document last week called Why switch to Bazaar? that may help. I’ve tried hard to present the big picture together with some concrete examples, explaining what we stand for and what that means to users, teams and communities in reality. Furthermore, if you tried Bazaar 1.x but found it too slow or inefficient, I’m sure you’ll find the Bazaar 2.0 benchmarks included in the document great news.

I hope you find the document interesting and food for thought. If there are any mistakes or you’ll like to translate the document to another language, please let me know.

About these ads

2 Comments

  1. I’ve been trying to pick a VCS for some personal projects. The comparative docs I’ve read seem to say good things about Bazaar. I personally am more interested in the simplicity of the command line interface and good behaviors for core features as opposed to how well it’s integrated with other systems or even performance characteristics, etc. When I read things like

    o Bazaar tracks renames properly. In comparison Subversion and Mercurial treat renames as “copy+delete” while Git infers renames on request.
    o Bazaar and Git support octopus merging.

    I feel like….hmmm…that sounds good…I guess…but it doesn’t exactly cause lights and alarms to go off in my head. What I’d really like to see (and haven’t yet found) is a simple scenario followed through for the most popular version control systems in a side-by-side comparison. For example, for each VCS show me the commands necessary to

    1) create a repository
    2) create a project
    3) check some stuff into the trunk on the project
    4) create a test branch
    5) fix a bug in both the test branch and the trunk (using branching and merging)
    6) show how to rename directories or files and merge those changes
    7) create a release branch and tag it with a label “R1.0″
    8) show how to uncommit a 2 GB MPEG of “Terminator 2 Judgment Day” that “mysteriously” got into your working directory and was accidentally added and committed.
    9) etc…

    This may not be the right example. I’m not looking for a tutorial. I’m just looking for a simple example with minimal explanation that includes those use-cases that differentiate the various systems. Include a use-case that shows where Bazaar has a simple command line and where other systems have a long or difficult command line. Include a use-case where other systems’ poor handling of renames result in errors or pain. Include a use-case that leads to Octopus merging (whatever that is) where Bazaar just works and other systems break down. And of course make it all as concise and easy to grasp as possible. I should think it would be possible to show all of these things in a start-to-finish example that has maybe only 20 or so commands. Such a document would not only make the abstract (and at least for me difficult to understand) comparative statements concrete (and easier to understand), but might also provide a real start-to-finish working example for the beginning user of these various systems.

    Any engineer actually trying to make an informed decision about which system to pick, I think, would appreciate this kind of detail.

    If you know of such an example I’d appreciate a link to it. If it doesn’t exist, I would surely appreciate you creating and posting it!

    Thanks much,
    Matt Busche

    Comment by Matt Busche — March 17, 2010 @ 3:02 am

  2. I gathered that bzr, git and hg are very close to each other, I use bzr mainly, but I can use git without too much trouble with the basic stuff.

    With bzr it works the following:

    2) create a project
    bzr init

    3) check some stuff into the trunk on the project
    bzr add

    4) create a test branch
    bzr branch trunk testbranch

    5) fix a bug in both the test branch and the trunk (using branching and merging)
    bzr commit
    bzr merge or bzr pull

    6) show how to rename directories or files and merge those changes
    bzr mv

    8) show how to uncommit a 2 GB MPEG of “Terminator 2 Judgment Day” that “mysteriously” got into your working directory and was accidentally added and committed.
    bzr uncommit
    bzr revert file

    Comment by Martin — December 5, 2010 @ 5:01 pm


RSS feed for comments on this post.

The Rubric Theme Blog at WordPress.com.

Follow

Get every new post delivered to your Inbox.

%d bloggers like this: