I'm part of a team that operates a portal for our company. There are ~200 small, what we call applications, inside of the portal. One may be to submit receipts, another to submit a timesheet, another to see activities going on, etc.
Each of these applications is fairly separate from the others, so we've created individual trunk/branch/tags folders for each of them. This way they can be developed and released individually without everybody on the team having to agree on a time to deploy the entire portal at once. Keeping each dev instance of the portal up to date is nearly impossible, because the only way to get it to fit is to check out each trunk into a subfolder.
This is nice from a separation point of view, but is very messy when we want to set up a new developer with a copy of the entire application to run on their local machine.
Do we need to just write a sophisticated huge build script to take each trunk and place its contents in the appropriate location in the context of the web application?