harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Geir Magnusson Jr <g...@pobox.com>
Subject [general] More SVN restructuring thoughts... (was Re: Ant build | IOException)
Date Wed, 07 Jun 2006 23:22:41 GMT
This brings up a good point. (I'm so used to CVS, I keep forgetting that
branches and tags really don't exist in SVN...)

We have been talking a little about how to 'federate' things so that we
have a harmony project, rather than separate islands of activity, so
that a user can type 'build' somewhere, and get a full working system w/
tools, vm and classlib.

The problem that we'll face is that we have

harmony/classlib/trunk
        classlib/branches
        classlib/tags
        classlib/archive
harmony/drlvm/trunk
        drlvm/branches
        ...

So you get a big pile of stuff whenever you do a svn co on root, as
Garrett points out.

I was chatting about this w/ Garrett, who is a real SVN guru, and he
suggested we do the following -

* setup harmony/trunk as the federation point w/ empty directories for
/tools, /vm, /classlib, whatever

* setup a fetch script so that it does an svn switch for each of them
into the right part of the svn tree (letting people choose among VM
choices, versions of classlib, etc).  You could also just use a symlink
to point up and over to /harmony/classlib/trunk

* build from that set

So we'd end up with

/harmony
        /classlib
                 /trunk
                 /...
        /drlvm
              /trunk
              /...
        /trunk
              /build
                    build.xml
                    ...
              /target
                    < where the build goes >
              /classlib
                    <empty>
              /vm
                    <empty>
              /tools
                    <empty>

This seems like it gives us incredible freedom, ease for someone that
wants to just do a top-level build (svn co harmony/trunk; setup vm=drlvm
classlib=head; build) and see what they get, and doesn't hammer SVN so
hard...

If no one thinks of a problem, I'll try this.  I doesn't change the fact
that projects should be able to push generated artifacts into a common
directory, but does make things easy to setup and work with efficiently.

Thanks Garrett!

geir


Garrett Rooney wrote:
> On 6/7/06, Thorbjørn Ravn Andersen <thunderaxiom@gmail.com> wrote:
> 
>> svn checkout https://svn.apache.org/repos/asf/incubator/harmony
>>
>> ant -f harmony/enhanced/classlib/trunk/make/depends.xml download
> 
> Please don't check out the root of the harmony tree.  It's incredibly
> wasteful, that's far more content than you need, and it'll only get
> worse as more tags and branches are created.
> 
> If you want to check out the trunk of the classlib, check out the
> trunk of the classlib:
> 
> svn checkout
> https://svn.apache.org/repos/asf/incubator/harmony/enhanced/classlib/trunk
> classlib
> 
> -garrett
> 
> ---------------------------------------------------------------------
> Terms of use : http://incubator.apache.org/harmony/mailing.html
> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> For additional commands, e-mail: harmony-dev-help@incubator.apache.org
> 
> 

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Mime
View raw message