Oh - I forgot to mention also that I got around to upgrading to WP 2.5. Not had much of a fiddle, so far all I can see is that the admin section had a bit of a facelift, but I’m off to bed in just a second as Hannah is waiting for me, so I shall investigate another time!
One other thing I did at work today was investigate an auto-update of a remote CVS sandbox when committing a file. I wanted this for 2 reasons - the setup at work and my home setup are similar and I’ve been wanting to find this out for some time but didn’t get the chance. I run a LAMP server, I develop on a Vista machine. I use CVS (I know, there’s only one of me, but I like the history of files etc.) to develop sites, and rather annoyingly I used to commit a file on Vista, then PuTTY onto the LAMP server, cd to the htdocs root, cvs update on there, then finally able to view it. I wanted a way to automate this laborious task, and in investigating this it would also benefit my work and hopefully eventually my colleagues.
I thought it was possible, but I wasn’t sure on the exact process, so I’m documenting what I found here to remind myself in future (that’s what this blog’s all about!). I actually found the answer in the form of a Perl script on an old fogo archive posted by a chap named Hugo Haas.
#! /usr/bin/perl -w my $CHECKOUT_SPACE = '/dir/to/remote/location'; my $CVSROOT = '/dir/to/cvsroot'; my $CVS = '/usr/bin/cvs'; chdir($CHECKOUT_SPACE) || die "Could not change directory to $CHECKOUT_SPACE: $!"; system("$CVS -d $CVSROOT update -d");
I slightly modified his to suit my own needs - I needn’t run a checkout every time, I just needed to do cvs update every time, but if I added a new directory etc., I made sure to add the “-d” option to download missing directories. This solved my home problem, so hopefully I can help work find a way of implementing CVS using their SFEE that they’re using as their artifact tracker currently.
To use the auto-update (Hugo called it auto-checkout), simply put the script as executable into your CVSROOT, modify the loginfo in CVSROOT to something like:
ALL (sleep 1 && $CVSROOT/CVSROOT/auto-update %s) &









