Version Control: Getting the Latest Version of the Source
Subversion is very easy to use and extremely powerfull. I recommend reading the FAQs and documentation at subversion's site if you have any questions on merging, commiting, or cleaning up the repository. You can get a number of very cute shell extensions and devtool add-ins at that same site. The rest of this document will tell you what you need to know to work on AW's site.
Checkout the Code
We have a public (GPL'd) repository located at American Whitewater's site under the directory /repos/wh2o/. This is a great place to start if you don't have developer access yet. There are two branches right now for website code, one is located under ./trunk the other under ./branches/testing. Testing is the latest (often buggy and incomplete) version, and probably recommended for new development. For fixes to the existing version of the site, use ./trunk. The difference is the way that the two are applied. ./trunk is immediately applied to allow the current site to function. Testing is constantly merged with trunk and also contains new development which runs under a variety of test environments before being committed to the working version of the site.
The command to checkout the code is (substitute the American Whitewater Website for host below):
$ svn co http://host/repos/wh2o/branches/test .
or
$ svn co
in the virtual machine's /var/www directory. To switch to the current repository issue:
$ svn switch http://host/repos/wh2o/trunk
VM Update from Repository Instructions
Issue:
$ cd /var/www $ svn update
You may have to reset your permissions:
$ chown apache.apache * -R
Updating the Code With Your Changes
Simply issue:
$ svn commit -m "Your update message here"
to update the repository with your changes. If you are adding new files or direcories make sure to issue:
$ svn add filename.ext $ svn del filename.ext
for the files you add and delete.
Using Eclipse
Eclipse has a subversion plugin which is mostly is accessed by right clicking on the file and going to the team submenu. It works great with a samba share to the virtual machine and even keeps track of file deletes, has a visual merge, and will allow commits right from eclipse.