I’ve found that having a single Subversion repository aids in:
- Transparency: it is easier to follow what is going on, and find code even in
projects you may not be directly involved in. - Maintenance: it is not necessary to create repositories every time you wish to
create a new project, and you can delete entire projects without fear of losing
the record from Subversion. - Maintenance: it is only necessary to have one repository backed up.
EDIT:
Additional reasons:
- Global revision ids – by having revision ids be global it is:
- Easier to communicate (e.g. in a code review request, just specify the revision
id, without a need to specify which project). - Easier to guarantee atomicity when projects have dependencies on each other.
- Easier to see the order of commits to different projects.
- Easier to communicate (e.g. in a code review request, just specify the revision