I see two approaches to meet your requirement
I will treat your "/" as "trunk" btw. as it wouldnt make sense for creating tags otherwise ;)
copy from revision approach
advantages
disadvantage
- documentation overhead (What is in this tag?)
- selecting of revisions possible source for error
- overhead scales lineary with number of projects
mark as stable approach
do this step once in your trunk:
Whoever checks out your main app will now get the latest versions of your projects when they were ready for release.
development teams for the projects do these steps whenever a new release is ready. They can decide to use the revision number or simply tag HEAD when they are ready:
on release/tag-day:
You can use a revision number too. Problem here is that your application layout indicates that project1 and 2 reside inside your main application "/". If that is not the case tagging and using fixed taggs for release-integration can be verry smooth. ("/" would get sub-tagged too)
real world example:
svn propget svn:externals http://svn.silverstripe.com/open/phpinstaller/tags/2.4.2/
advantages
- documentation is a bit easier via svn history and revision graph
- tagging overhead scales and remains constant on main tag-day
disadvantages
- more complicated to setup & understand (whole team has to)
Tags are just "symlinks" to revision so both scenarios use the same principle. Tagging feels more explicit though.
This whole scenario is not a 1:1 copy-and-it-works suggestion but more of a generic model.