After buying Subversion as my RCS needs (and AnkhSVN/TortoiseSVN for my primary Subversion clients), I'm attempting to choose an SVN server. I've checked out a lot of them:

  • Local (ie file:///)
  • Collabnet
  • VisualSVN Server
  • Tigris
  • SilkSVN
  • SharpSVN
  • Apache module

I’ve installed each inside a VM to take them into consideration but haven't found enough to differentiate many of them sufficiently to choose any sort of. Now I've got a couple of things I have to choose.

  1. protocol
  2. vendor
  3. SSL


1. I've read that HTTP is a lot reduced compared to SVN protocol. While my projects aren’t generally too large (really just the initial import it's time-consuming part), I actually do would like to get the performance advantages of SVN, in addition to avoid my HTTP logs being flooded with SVN records (which i've by yet been not able to segregate right into a seprate LOG file).

I actually do however such as the web interface that utilizing an Apache module or VisualSVN offers. I don’t really should provide my stuff to others (as well as myself from my system), therefore it isn’t critical, however it certainly enables for expandability.


2. After selecting a protocol (presuming I have to select) I want help determining what vendor to make use of. I initially used the Apache module in the Tigris distro. I've since removed that (well, just disabled it), and am presently using VisualSVN (that is HTTP and therefore slow). I've come across people endorse Sharp and Silk however they appear to become more compact, indie distros.
Collabnet however appears to become more elaborate than I want. Essentially, unless of course I'm able to be convince for just one of individuals, I'm mainly just trying to choose from the state Tigris and VisualSVN.


3. I've also attempted playing around with SSL with little success (I can’t afford a genuine CA, and so i am utilizing a self-signed cert in VisualSVN). I'd gladly use SVN+SSH/HTTPS, but when I'm utilizing it by myself system, then it isn't necessary, and when I personally use it externally, then my self-signed cert won’t help.


I guess which i may even make use of a local repository I'd believe that it might be the quickest. However would rather a far more formal solution just in case I expand. (I considered simply using the TortiseSVN client to complete the job from the server in your area.)


So to sum up, I want top tips which server(s?) to make use of. An amount do well is that if I possibly could get VisualSVN to supply an HTTP interface for web use, but additionally serve with an SVN protocol to be used within the clients, ideally with a choice of SSL on each. Is the fact that possible? Will it be an excessive amount of work (I truly want to return to focusing on my projects instead of all of this meta-work).



Thanks.

Edit

I figured I ought to provide a little information on my conditions to clarify things.

  • (Presently) Single system, (older P4, Home windows, 1GB SDRAM)
  • (Presently) Single developer (me)
  • (Presently) Relatively small projects (<2MB)
  • Numerous projects (>100 individual applications, games, libraries, internet sites, etc.)
  • Externals needed (particularly my very own library in addition to third party header, Boost, etc.)
  • ? hmm, what else…