After years of looking for better and better ways and means of managing source code, we turned to one of our own software suites, a graphic free-form-search Knowledgebase, to manage O-O code that is used across ten commercial software products that we develop, maintain and support.
We found that the “must-have” features for managing source were:
a) auto-version control
b) node aliasing, because source code units are typically used across several, sometimes all, products.
c) free-form-search facilities so you can pick any code fragment and immediately see where it is used, pick any developer to find out units they have worked on etc.
In the screenshot below we have a code set relating to a custom app that we built for a customer in 1998, with 250+ source code units and 16 database tables.
Clicking at any node reveals the source, drilling down allows you to browse the versions of the source, engaging a search for any code fragment, table construct (latest or all) causes all primary node “hits” to light up.