WebSVN
From DreamHost
WebSVN is a PHP-based subversion frontend which offers easier access to changelogs than the basic web-enabled subversion facility provided by Dreamhost. The latest releases as of 14 August 2007 were (username guest, no password) 1.62 and 2.0.
Installation
Your dedicated svn sub-domain will not serve WebSVN. It's reserved for svn by DreamHost's dedicated Apache2 process. Install WebSVN in a standard sub-domain, and protect it if necessary with a .htaccess file, then configure it to point to a remote repository at your Dreamhost SVN location.
To Configure, navigate into the /include/ subdirectory.
For 1.62: copy distconfig.inc to config.inc.
For 2.0: copy distconfig.php to config.php.
Make your changes to the appropriate file, config.inc or config.php, especially one of the addRepository lines:
$config->addRepository("my repository", "http://svn.domain.com/", NULL, "username", "password");
or for a bit more speed use a "file://" URL to point to the location of the repo:
$config->addRepository("my repository", "file:///home/user/svn");
NOTE: the third slash after "file:", this is needed to tell WebSVN to start at the root directory of the file system.
WebSVN does not appear to follow symlinks. So clever symlink-based deployments will likely not work.
Syntax highlighting
WebSVN supports syntax highlighting with the use of GNU enscript 1.6 or newer. You can download and build enscript in your own home directory:
mkdir src
cd src
wget http://www.iki.fi/mtr/genscript/enscript-1.6.4.tar.gz
tar xvzf enscript-1.6.4.tar.gz
cd enscript-1.6.4
./configure --prefix=$HOME
make
make install
Then point the path to enscript in your WebSVN config.inc or config.php file to /home/yourname/bin/ and the path to sed to /bin/. Finally, uncomment $config->useEnscript();.
NOTE: On the GNU enscript page there is a section on "Language Highlighting" which tells you to download a archive (hl.gz or hl.zip) and unpack it into your $HOME/share/enscript directory to update your highlighting rules. This appears to cause WebSVN to display a blank page when you try to view any file in your repository. The rules that come with the enscript distribution above work fine, so there's no need to update them.
Multiviews (pretty URLs)
Simply add a .htaccess file into the root of your web folder with the following:
Options MultiViews
DirectoryIndex wsvn.php
And uncomment the $config->useMultiViews(); line in your config.php.

