Subversion directory structure is very free, all planning must be your own rules, consider a Subversion repository directory tree, you can identify any directory as a project, you can only checkout the directory of all the files to encode, unlike CVS, CVS explicitly specifies a module. So you can save multiple items in a warehouse, or you can save a project in one warehouse and use multiple warehouses. I personally prefer the second one, because each commit of subversion causes the entire warehouse version number to be incremented, which causes a fault in the version number of multiple projects. And if multiple project participants are different, it is not convenient to use apache2 for fine-grained permission control. A warehouse for a project that looks more elegant.
The following is the warehouse plan that I have researched.
On the server side, create a new directory to hold all the warehouses. Like C:\svnrepos. Then build each project independently in this directory
Svnadmin Create "C:\svnrepos\rolex"
Svnadmin Create "C:\svnrepos\omega"
Start with svnserve-d-R "C:\svnrepos". So the URL of your project is:
Svn://ip/rolex
Svn://ip/omega
Create a new directory on the client, as the import content, such as C:\svnimport\rolex, and then build the Branches,tags,trunk subdirectory inside, put the project you need source control into the trunk directory, pay attention to delete junk files. On C:\svnimport\rolex, click Import ..., select the URL for Svn://ip/rolex. You can use the warehouse browser to view the effects of the import.
When you need to work, create a new directory such as C:\svnclient\rolex\trunk, and then checkout the contents of the Svn://ip/rolex/trunk on the trunk.
SVN Multi-project management (highly recommended for each project to build a library)