Software development version control, for me, used to consist of online backups at CrashPlan. This worked OK since they store (and let me restore) old versions of each file, so I could always get back to old versions of the source code (I still use and recommend them for backup of everything else).
But then about a year ago, I really got hooked on Git. This is of course a lot more flexible, allows for branching, collaboration, and many other good things.
So now, all my program code and web-sites are in Git version control and is regularly pushed to cloud based repositories for backup, easy access from different locations, etc.
For our open source projects, including a number of Simple DNS Plus plug-ins, I use GitHub (see https://github.com/jhsoftware). This seems to be the place to be these days, and it is also where people are most likely to stumble upon one of our projects.
For private repositories (such as the source code for Simple DNS Plus), I use BitBucket. I like their web interface, it is fast, and they provide free unlimited private repositories to small shops like ours.
Incidentally, the company behind BitBucket (Atlassian) also makes SourceTree - my favorite Git GUI software.
For our web-sites (hosted with Microsoft Azure) I use the Azure Git publishing feature. This way a Git push updates both the live web site and the remote repository at the same time.
I just stumbled upon Bonobo Git Server - a free open source Git Server that runs on IIS.
It is simple to install and setup, it has a very nice web user interface, and it can even be used to publish updates to web-sites on IIS with Git push - just like I do with Microsoft Azure today. If I decide to run my own web-server again at some point, I will definitely be using this.