[RFC] Bound branch terminology, master/slave?

Erik Bågfors zindar at gmail.com
Wed Mar 8 16:36:50 GMT 2006


2006/3/8, David Allouche <david at allouche.net>:
> Summary: Do you agree to rename "bound branch" to "slave branch"?
>
> Damien Boucard (hackter in #bzr) our stalwart french wiki translator,
> recently translated the wiki documentation about bound branches.
>
> He initially translated "bound branch" as "branche bornée", which is
> quite unfortunate. "Bornée" is indeed the correct translation for the
> mathematical term, as in "bound value", but it also common language for
> "dumb and obtuse", and does not convey the "rope-tied bondage" meaning
> at all.
>
> We agreed to tranlate "bound branch" as "branch asservie", which
> actually means "slave branch". Damien pointed out that the meaning of
> "bound branch" was not obvious to non-english speakers.

It's very obvious in Swedish. I don't think we should change a clear
english word because it doesn't fit well when translated to another
language.

However, I'm not crazy about bound or master/slave either, see more below.

> I remember there was some discussion before about changing the bound
> branch terminology to "slave branch" and "master branch" instead of
> "bound branch" and "???".
>
> I'd like to gather consensus for that change in the english
> documentation and user interface. Unfortunately I do not have the time
> to do the changes myself, so I have to settle down with trying to
> convince other people to do it.
>
> PS: please CC me in replies, I do not even have time to keep up with the
> ML at the moment. But I hope to get some company time for that soon.


I don't quite agree.

I really really like the setup that Rob has implemented that checkout
creates a bound branch.  I just demoed this for someone who doesn't
know how bzr works, and I just did a checkout, then commit, a commit
--local, followed by update and commit again and stuff like that.  He
was very impressed and never knew anything about that it was a branch.

I kind of see it as a standard checkout with a big cache (that holds
the entire branch and that you can commit to).  I don't think that a
user has to know  that it's a bound branch.

I propose going in that direction instead, where we have a
heavy/large/fat/cached/whatever checkout. This checkout can be turned
into a full branch by running a command, and a full branch can be
turned into a "checkout" with another command.  Currently the commands
are bind and unbind, but they don't fit.

There are a few other changes I'd like to happen in "heavy checkouts"
as well....
* "bzr nick" should return the nick of the "master branch"
* "bzr nick foo" should set that nick
* We might add "bzr nick --local" that is the nick used when running
"bzr commit --local"?? (don't know about this one)
* bzr bind and bzr unbind should change name to something else.


* If I have done local commits, and then run bzr update and there are
no new commits in the "master branch", the local changes should be
pushed I think.  Or maybe kept as there are until the next commit?
* If I have done local commits and run bzr update (where there have
been commits in the master branch"), I need to get a message saying
that the commits I've done have been put aside and are viewable with
bzr status and will be committed with the next commit


For people that wants to know more about how bzr really works, it can
be explained that checkouts are bound branches, and then explain that.
 We should hide things from them if they look for the information.

What do you think? This is just some ideas, I'm happy either way.

/Erik




More information about the bazaar mailing list