[Trac] Re: Multiple Project Support

Gary Oberbrunner garyo at genarts.com
Thu May 5 12:03:22 EDT 2005


Hi, I hope you don't mind my bringing up this thread again -- I saw it in the 
mailing list archives.  Perhaps my usage model might help people thinking 
about how to support multiple projects.

We at GenArts are in the 
http://projects.edgewall.com/trac/wiki/TracMultipleProjects/SingleEnvironment 
camp.  We have a single SVN repository with a single source tree in it.  From 
that source, we produce a whole family of products.  Each product has its own 
release schedule, its own set of version numbers, its own timeline and milestones.

Trac's Components don't seem to work well for this, because components don't 
have their own version numbers or milestones.

We'd like the Roadmap to show milestones for each project.  We'd like the 
timeline to show everything for all projects, by date.  Of course in this view 
you *can't* filter the svn repository changes by project, since it's a unified 
repository for all projects.  Maybe that's a difference in our model from 
other people?

And of course we'd like to be able to see all tickets for all projects or just 
some.

It seems to me (not that I know what I'm talking about!!) that a good way to 
do this would be to continue to use a single sqlite database, but add a 
Projects table, and a 'project' field to tickets, versions, milestones, and 
anything else that's per-project.  The default project (project id 0) could be 
the null project for compatibility, then anyone not using this feature would 
see no change.

The Projects table could specify repository subdirs for each project; in our 
case they'd all be the same (top-level).

Then just tweak a bunch of sql queries to use the proper Project where needed. 
  Does this make sense?

(ps: is anyone here old enough to remember the TRAC language from the late 
60s?  http://tracfoundation.org/trac64/procedure.htm.  That's what I first 
thought of when I saw trac's name.)

-- Gary Oberbrunner


More information about the Trac mailing list