Best way to manage multiple apps in Subversion

svn

Solution

The usual approach is pretty much exactly your middle example. There's a good discussion of branching patterns in the subversion documentation.

Problem

How do you maintain two (or more) versions of a project in SVN? different trunks, inside the main trunk? branches? Totally separate folders? I currently have, assuming I am about to make v2 of ProjecA, but I still need to fix bugs in v1: ``` \ProjectA\trunk\[myfiles] \ProjectA\tags\ \ProjectA\branches\ ``` Which would be the best way to do that? ``` \ProjectA\trunk\[myfiles] \ProjectA\tags\ \ProjectA\branches\v1\[myfiles] \ProjectA\branches\v2\[myfiles] ``` OR would something like this be better? ``` \ProjectAv1\trunk\[myfiles] \ProjectAv1\tags\ \ProjectAv1\branches\ \ProjectAv2\trunk\[myfiles] \ProjectAv2\tags\ \ProjectAv2\branches\ ``` Which would you use, and more specifically, why? I am leaning toward the first option, but something about it feels wrong. At the same time, the second option seems clean, but ugly. Any thoughts are appreciated.

Original source

Related problems