Subversion is a replacement for CVS based on current technologies such as HTTP and WebDAV.
The website on tapioca is managed using subversion.
All pages for the tapioca website are checked in a subversion repository at http://sw.deri.org/svn/.
The repository is hourly checked out per cron job into /var/www, where the web site resides. That's why, if you make changes to global pages (i.e. pages
that you don't "own" in your own home folder), these changes will
take some time to come into effect.
More and detailed information about subversion can be found in the book by O'Reilly, which can downloaded here (legally).
svn import directory/ http://sw.deri.org/svn -m "your comment"
svn checkout http://sw.deri.org/svn
svn status
svn update
svn commit -m "some comment"
svn propset svn:keywords Id filename
svn (delete|rm|remove) filename
After the recent crash of the subversion system, our glorious admin tried to recover everything with the tools provided by subversion. Unfortunately, due to low-level problems, it didn't work completely. So here is what I did to recover my own stuff:
svn export $PATH_TO_LOCAL_REPOSITORY $NEW_PATH.
This makes a copy of your working copy, and strips it of all
the svn-related files (i.e., all the .svn
directories). This is necessary to be able to reimport it
later!svn co http://sw.deri.org/svn/my_stuff.svn delete *, and commited the deletions:
svn commit -m "deleted everything".svn add *.Id parameter on all the
relevant files... No way around that, I guess. Look
here for instructions.svn commit -m "added everything again"OK, I hope that helps and makes sense...
# svnadmin create /var/lib/svn/repository
chown -R www-data.www-data repository, change /etc/apache2/dav_svn.conf and add the repository to the site structure.
# htpasswd -m /etc/apache2/auth-file username
# vi /etc/apache2/group-file
To restrict access to certain users or groups, change /etc/apache2/sites-enabled/svn and add along the lines of
<Location "/2006/04/swseminar">
Require group deri
</Location>