Is bzr *appropriate* and *ready* for me?

James Blackwell jblack at merconline.com
Sun Feb 5 22:05:39 GMT 2006


On Sun, Feb 05, 2006 at 08:27:47PM +0100, jorges wrote:
> ... or maybe the question should be: Am I ready for bzr?
> 
> (long post)

Long posts welcome here.

> Hi all,
> 	I've been wandering around the web these last days collecting info
> regarding SCM tools, and I've found so many options that I feel lost
> right now. I have used subversion for the last year or so, with very
> small stuff I've worked on. So far I worked alone on these projects, but
> from two different places (home & university), so the compelling reason
> to use an SCM was *both* to be able to follow back my own footsteps and
> to sync the work done from these two places easier.

Yeah, you can easily do this in bzr, provided one of the locations can
reach the other or you have a third location that the two have in common.

> 	I started looking into distributed SCMs 'cause I've read somewhere
> 	that you gain in flexibility, and because you don't rely on
> 	(exclusively) on having a central repository available online. I am
> 	not even sure I *need* a distributed SCM, being the only one working
> 	in my projects.  Then I thought that someone more experienced could
> 	probably guide me on that, and so here are some questions:

Yeah. Though we do support shared repositories, they're not required. Most
of the time that means people don't bother because they can just push
branches around.


> 	1. Do I need to switch from subversion? Typical use *now* is: I store

Definitely. Though the biggest wins is when there's two or more
developers, there's still wins for independant developers.  Some of the
things that come to mind are incredible ease of use, uncommit, local
branching (most people that start off with just one branch start doing it
because its so easy).



> the repository at home (I have a dsl line), and checkout and commit to
> my projects both from home and from university. Most of the time the
> work is on the same stuff but just from two different places, i.e. I
> continue the work at home where I left it at university. I don't do much

You would have two good models to use. You could even continue in shared
mode (despite common misconceptions we do support shared branches).

Another model you could easily do is play two-developer mode. Have a
branch at home and a branch at school. When you get to school, merge in
from your home branch. When you're about to leave school push your branch
to home.

> branching and other stuff, I work on the *head* most of the time.

You know your behaviours. I have noticed though that people that think
they never needed anything but a head branch start to come up with all
sorts of neat uses for them over time.


> Exceptions are when I have a demo scheduled or smthg like that, where I
> freeze the work in a working state and continue trying improvement, etc.

Yup. You could do this very, very easily. Just cp -a head/ mydemo/. You
could then tune the demo by performing various tuning things that you'd
like to do.

At the same time, you could continue to hack in head.


> Complementary data: I program usually in C++, don't have much clue about
> python and although I am keen on fidling with stuff, I don't consider
> myself "strong" regarding programming.

You don't need to be a hacker of any sort to use bzr. If you can install
python (this is easy on most systems these days) and a couple of other
things, then you've done all the programming that you need to do for us.

Since you happen to be doing C++ at University, you're probably doing full
fledged oop design. If you wanted to fiddle with python, you'd probably
find it a bit... charming...

Also, its really easy to make Bazaar-NG plugins. Once you picked up some
python code, you could start doing all sorts of neat things via plugins
that wouldn't necessarily require that you dive deeply into the code.

> 	2. If above answer is yes, is bzr the right choice? I know this might
> seem like the wrong place to ask for an unbiased answer to this, but I
> am willing to try. Complementary data for answering: I am doing a Ph.D

We have a lot of people contributing to Bazaar-NG. I bet they would be
contributing to something else instead if they thought it was a lot
better.


> am willing to try. Complementary data for answering: I am doing a Ph.D
> and I will start writing my thesis sometime soon. I plan to use SCM for
> helping me with the task (besides some programming that goes in line
> with the thesis). What I'd like is something I can rely on, that would't
>  turn my valuable stuff into crap in 8 months cause there has been some
> change in design or bug, etc.; that has reasonably good documentation
> (at least for the basic stuff, I will probably underuse any SCM); good
> community support (I am pretty confident in this viewing the activity on
> this list).

I can't imagine your valuable stuff turning into crap in 8 months unless
your phd is to collect the dung of extinct animal species. We've got
hundreds of test cases watching for bad behaviour and we've got a check
command that you can run any time you start getting nervous.

If the only thing you've watched so far is the mailing list, then you
ain't seen nothing yet. Try us on IRC. There's always somebody around
ready to lend a hand.

Some of us are even known for helping people over the phone for as long as
it takes to get somebody sorted out. =)

> 	3. If the answer to (2) is also yes, what do you think would be a 
> 	good way of using bzr considering my needs?

Start off with a simple branch. Stick with that until you want more. Then,
do more if you want. I can start you off with this four step process once
you've gotten Bazaar-NG installed (which anybody can help you with if you
need it).

    $ bzr init
    $ bzr add
    $ bzr commit -m"my first branch"
    $ echo "Silly me. There is no step 4"

> I realize this has turned out a very long message, I wouldn't blame he
> who stopped reading long ago... Anyway, If you get here and can answer
> some of the above, many thanks.

I'll see your long post and raise you an even longer one!  In all
seriousness though, if I've missed any of your questions, or spawned new
ones, then hit us back again. 

Unfortunately I'm leaving for Vancouver in about 24 hours for about
four-five days. Once I get back, then I'll take you through anything you
need to get comfortable with Bazaar-NG.


> Jorge

Welcome onboard,
James

-- 
My home page:   <a href="http://jblack.linuxguru.net">James Blackwell</a>
Gnupg 06357400  F-print AAE4 8C76 58DA 5902 761D  247A 8A55 DA73 0635 7400
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20060205/99839c2f/attachment.pgp 


More information about the bazaar mailing list