When we graduate, I think it would be a good idea to slightly
restructure our SVN layout, moving the trunk/branches/tags designation
to one level higher for the uimaj, uima-as, and sandbox projects.

That is, the new layout would look something like:

.../uima/trunk
              /uimaj (Java SDK)
              /uima-as (add-on to above
              /sandbox
              /superPoms  <new directory to hold various parent poms>
              /sharedBuildTools <or maybe a better name>
        /branches
        /tags

The branches and tags can have just parts of the trunk copied to them,
or they can have the whole trunk.  The Apache Release plugin works with
this structure; for instance, if you want to release just
sandbox/projectXXX the release plugin would copy sandbox/projectXXX to
the tag, not the entire trunk.  (I haven't tried this, but that's the
impression I get from reading.)

The goal of this is to allow checking out the "trunk" to check out
everything, as well as allow checking out any specific sub-part(s) of
interest (e.g., one sandbox project), and have a consistent layout in
working store that matches the SVN.  This will enable a more
straight-forward build process, and allow us to use more standard Maven
tooling.

The sharedBuildTools would be tooling (such as DocBook tools) needed for
building, but not something that is part of normal distributions or
releases.  (It *could* be released, as a separate component, if that was
desired).  (It can also be included in the tag - to preserve a
particular version of the tooling used to build a release).

Any opinions pro/con moving to this kind of layout, when we move out of
the incubator?

-Marshall






             

Reply via email to