I don't own a desktop machine, and the closest thing to a desktop system is the mother brain I'm building
I'm also connected to my home network far less than I am to anywhere else, so difficulties arise in a number of backup/RCS situations
I spent many hours this weekend researching svn, arch, svk and other tools of revision control, there was even a good article by Debian developer Joey Hess about living his /home in subversion. While I totally agree with being able to keep revisions of my home directory stuff around for archival purposes, I think that using a RCS for a whole directory is just too complex for most needs, I don't want to remember to svn add or svn move files whenever I muck with things, or use a script to muck with things in the directory.
The idea of using a .hide with a bazillion symlinks is also a chore that I would rather not have to put up with.
I also looked at using arch but for the same reasons I abandoned svn, I bailed on arch, plus, it seems like the maintainer is a cocky son of a gun.
svk and arch both allow distributed repositories, which would solve my away from network issue, but it is another level of shenanigans in using my directory.
I decided what I'm going to do, for now . . . I will continue with my current backup scheme, and modify it to work a little better for me.
I use rdiff-backup and bave used it since September. it works quite well for me. For now what I will do is simply use it more often.
I am comptenplating using svn for my src directory as you should when programming, it will be a local directory that will get backed up by rdiff-backup but not store old copies of the repository on my server.
For transferability of user environment, I think it'll be easier to just write a quick shell script that will scp files over to the place I need them.