Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

How do you organize your software assets (source code and resources), your "active" and "past" projects, and your Software Department processes/work-instructions (including source code conventions, rules, and reviews process)?

For example, one approach would be to use "Trac" with databases for "Software Assets" and "Software Process". Another would be to have databases for "Project A", "Project B", and "Software Process".

Is your source code "by-project", or "by-all-in-department", or "by-product"?


migration rejected from Jul 1 '15 at 13:56

This question came from our site for professional and enthusiast programmers. Votes, comments, and answers are locked due to the question being closed here, but it may be eligible for editing and reopening on the site where it originated.

closed as too broad by durron597, GlenH7, MichaelT, Dan Pichelman, enderland Jul 1 '15 at 13:56

There are either too many possible answers, or good answers would be too long for this format. Please add details to narrow the answer set or to isolate an issue that can be answered in a few paragraphs.If this question can be reworded to fit the rules in the help center, please edit the question.

Working in a Fortune 500 company, our source is organized by group (or department) and by product/application. The group layer allows us to maintain security to just those who should have access. Projects for us can span multiple applications (or products) and would be a nightmare to base our source code on.

For any application that has been retired, we move that source code to an archive repository, making our main repository strictly for live applications.


Not the answer you're looking for? Browse other questions tagged or ask your own question.