What about branch from a branch ? In general you need a tuple of (base version, 
branch id, branch version) to identify a branch version. Similarly a branch on 
a branch would become ((base version, branch id, branch version), branch2 id, 
branch2 version).

In VW we use the following convention

        base version + branch id - branch version

which then naturally extends to

        base version + branch id - branch version + branch2 id - branch2 version

In monticello, your 'version' is author.nr (to accommodate distributed 
development) so the scheme would become

        author0.nr0 + branch1 - author1.nr1 + branch2 - author2.nr2

People probably won't like that, but I think the notion of the version 
identification tuple is relevant to the discussion. For example neither of the 
schemes below indicates where the branch starts.

"Lukas Renggli"<reng...@gmail.com> wrote:
> You cannot get rid of branching, this is a central part of version
> control and extensively used in many large projects.
>
> In Seaside we use the following pattern, also see the documentation at
> http://code.google.com/p/seaside/wiki/PackageNaming:
>
>      Package     = PackageName "-" Author { "." Branch } "." Version
>
> However I noticed that other projects (and earlier versions of
> Seaside) use a different scheme:
>
>      Package     = PackageName { "." Branch } "-" Author "." Version
>
> In this case I guess we must support:
>
>      Package     = PackageName { "." Branch } "-" Author { "." Branch
> } "." Version
>
> However, that doesn't change  that $. and $- cannot be part of the
> PackageName or Author.


Reply via email to