UPDATE 2010-04-15: Due to recent changes at BlueHost, the instructions below will no longer work. You’ll get SVN installed, but you won’t be able to check out your repositories. See No SVN on BlueHost for the details.
I’m in the process of migrating most of my sites from DreamHost to BlueHost. Putting the reasons for the move aside (<cough>uptime</cough>), DreamHost has one major advantage over BlueHost: easy-to-setup SVN. On BlueHost, SVN isn’t installed, so it took a bit of research to figure out how to do it. I found installation instructions in a few places, but (1) they were all for version 1.4.6 (1.6.4 is the current version) and (2) they didn’t quite work for me. So, here’s how I went about it:
cd ~/src wget http://subversion.tigris.org/downloads/subversion-1.6.4.tar.gz wget http://subversion.tigris.org/downloads/subversion-deps-1.6.4.tar.gz tar xzf subversion-1.6.4.tar.gz tar xzf subversion-deps-1.6.4.tar.gz cd subversion-1.6.4 ./configure --prefix=$HOME make make install cd ~ mkdir svn cd svn svnadmin create MyRepository
Pretty simple, overall. Subversion handles all of the dependencies automagically. The only non-standard bit there is the --prefix=$HOME to install it in my home directory (where I have write permission).
Now I can check out my repository with:
svn co svn+ssh://myUserName@mydomain.com/home/myUserName/svn/MyRepository
Notice the use of the svn+ssh protocol. BlueHost doesn’t have mod_svn enabled for Apache, so you can’t connect using HTTP.
Thanks to the Subversion / TortoiseSVN SSH HowTo and these instructions for remembering SSH passwords, I was able to save a session in PuTTY and use those settings to connect using a public key, so I don’t have to enter a password 400 times to check out the repository.

