Server requirements depend on many factors, such as number of users, frequency of commits and other server related operations, repository size, and the load generated by custom repository hooks.
When using Apache, it is likely that Apache itself will be the biggest factor in memory usage.
svnserve speaks a custom protocol, while mod_dav_svn uses Web DAV as its network protocol.
See chapter 6 in the Subversion book to learn more. The long answer: if you just want to access a repository, then you only need to build a Subversion client.
The repository just stores a versioned directory tree — you may consider certain sub-trees to be projects, but Subversion doesn't treat them differently from any other sub-tree.
Thus, the interpretation of what constitutes a project in the repository is left entirely up to the users.
(This is similar to how branches and tags are conventions built on top of copies, instead of being basic concepts built into Subversion itself.) Each time you commit a change, the repository stores a new revision of that overall repository tree, and labels the new tree with a new revision number.
Of course, most of the tree is the same as the revision before, except for the parts you changed.
The Subversion server (i.e., the repository side) is the same, except that it will not host a Berkeley DB repository on Win9x platforms (Win95/Win98/Win ME), because Berkeley DB has shared-memory segment problems on Win9x.Different versions of Apache can happily coexist on the same machine.Just change the First, note that Subversion has no concept of projects.The Subversion development community cares deeply about its stability and robustness.Subversion has been in development since 2000, and became self-hosting after one year.A year later when we declared "alpha", Subversion was already being used by dozens of private developers and shops for real work.