Boost logo

Boost :

From: Rene Rivera (grafikrobot_at_[hidden])
Date: 2007-06-18 01:26:50


First off, your comparison against the current sandbox non-structure is
just plain irrelevant. The current setup doesn't follow any structure
yet, hence why I started a discussion about what the structure should
be. So I'm just not going to respond to those parts below. The abstract
structure that is equivalent is something like:

/trunk
   /project1
   /project2
/branches
   /project1
     /one (branch copy here)
     /two (branch copy here)
   /project2
     /breaking_changes
       /int_to_double (branch copy here)
     /nonbreaking_changes
       /int_to_long (branch copy here)
/tags
   /project1
     /1_0
     /1_1
   /project2
     /prerelease
       /0_1
       /0_2
     /release
       /1_0

troy d straszheim wrote:
> On Sun, Jun 17, 2007 at 10:01:07AM -0500, Rene Rivera wrote:
>>> This 'inverted' structure has several disadvantages that were
>>> discussed. You wouldn't want to avoid 'private' meta-projects. They
>>> are one of the main features of the system.
>> Could you point out what those disadvantages are? AFAIK a top-level,
>> what you call inverted, is equivalent to a bottom-up arrangement.
>
> The proposed structure facilitates such fundamental operations as:
>
> * renaming a project (all the branches come with you)

True.

> * deleting a project (same)

Yes.

> * finding out what branches exist for a project (they're right there)

Equivalent to the above.

> * controlling commit access to individual projects (it's only one directory)

IIRC it should be just as easy to set a single permission with a
wildcard such as "/*/project-name". So I'd say this is also equivalent.

> * giving descriptive names to branches (there are separate branch namespaces)

Equivalent.

> ** you can easily see what projects exist

Same as above.

> ** you can easily locate all the branches of a project

Same as above.

> ** you can easily rename/delete a project and all of its branches.

OK, in the top-down layout you'd have to rename in a small number of
spots, normally three. So I don't see this as a real disadvantage.
Especially since renaming a project would be a rare occurance.

> ** you have more namespace for your own pet branch, so you can give
> your branches more succint and descriptive names.

Same as above.

And as I've mentioned before the disadvantage to bottom-up:

You don't have a single directory you can check out to see the current
set of projects. If you check out the root you get every version of
every library filling up your drive with stuff most people don't care about.

-- 
-- Grafik - Don't Assume Anything
-- Redshift Software, Inc. - http://redshift-software.com
-- rrivera/acm.org - grafik/redshift-software.com
-- 102708583/icq - grafikrobot/aim - grafikrobot/yahoo

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk