08:16 < abentley> Better phrasing: 'what circumstances should cause us to produce a working tree in a repository branch'?

Erik Bågfors zindar at gmail.com
Fri Feb 10 10:27:01 GMT 2006


> However I find slightly it odd that both you and Aaron
> seem to believe that creating standalone branches is going to be the most useful
> default.  In my experience, that is absolutely not the case for non-developers
> (which is about every one out there).  They just want a convenient way of
> working on the same stuff (like papers, grammars, other kinds of data, possibly
> software (but not in the advanced way we see that)).  For them, a
> non-centralized model would be a major hassle.  They can just barely cope with
> the centralized model.


Agreed.

I think there are three uses for none advanced users.  And two of them
kind of goes together. Most of them will be happy with the first of
the three.

1
=======
Person A has a centralized bzr repo at his work.  They tell him that
he needs to do:

bzr checkout sftp://foo/repo/product/trunk product-trunk

to checkout the work, to hack in product-trunk then to
bzr commit

to commit it.

2
=======

Person B is a single developer that wants to version his work.  He runs
bzr init; bzr add; bzr ci -m 'init'
then he's ready to hack away

3
=======
Person C, is a developer who wants to help with a OSS software, he runs
bzr branch http:/....../ foo
cd foo; hack hack; bzr commit
bzr push sftp://foo/~/public_html/foo



None of these requires that the user needs to do anything special with
repositories.  Because of this, I belive that checkouts and stand
alone branches will be the most common case.  In all of these cases,
the user doesn't need to know who to create repositories.


That said, for person A to create a branch in the central repo he
should be able to run

bzr branch product-trunk sftp://foo/repo/product/branches/2.2

or

bzr branch sftp://foo/repo/product/trunk sftp://foo/repo/product/branches/2.2

Which means that the branch command should be used to create branches
on none-local storage.  I think it's wrong that we use "push" for this
now.

More advanced users might like to not use checkout, but use bound
branches, or perhaps even bound branches into a local repo, or maybe
none bound but into a local repo, etc. All should be possible but less
common.

Regards,
Erik




More information about the bazaar mailing list