We use Subversion as the source control tool. The ROOT of the public repository is at;
https://scm.ops4j.org/repos/ops4j, browseable* here
Under the public root, we are suggesting the following layout, to promote the Code Ladder approach to development.
The users/ directory contains a folder for each user and the user is free to organize it in any way. All new efforts must start in here, and only after an additional developer is working on the codebase, can it be promoted to a project.
If you have signed up here, you can create your folder under the users/ directory by the usual SVN command:
Under projects/ there will be one directory for each project that gets started. Projects that don't have developer activity in 6 months is moved to retirement/ . The developers of the project collectively decide how to organize, but should consider to organize according to the requirements of the product/ step. Projects seeking promotion to product needs; 5 active developers, the project organized as a product, operate a separate mailing list (ask at infra@lists.ops4j.org), and have a minimum of 200 mails a month over at least two months. This ensures strong participation and long-term sustainability.
Under products/ you can find projects that have shown sustainability, long-term commitment from a flock of developers and stability. Daily development happens in the dev/ directory. qa/*contains work that is needed to get a milestone through the door. If there are no issues with the milestone, it is promoted to a release. The release must be binary identical (except versioning numbers) with the milestone it is based upon. Products reaches end-of-life after 12 months of no user support requests, and then placed into the *retirement.
And finally, projects and products that are no longer actively supported, are put into the retirement/. Projects are put in there more quickly (6 months) than products, not only because products has stronger developer community, but also as an assurance to the user community.