Subversion has been a friend of mine for some time now. Given the order of environments I have been required to work in, it’s more than suited our needs… anyhooo. Then there’s Bzr which has really grown on me, especially for offline version control. But what is really cool, is using both of them. I probably could set up a bzr server, but the subversion repository is already in place… incremental adoption always works smoother.
How easy is it? Just run bzr branch <svn:uri> and you’re set. Easy. Then you can run multiple ‘bzr commit’ commands to keep a local versioned control record of code changes, and when you’re within connectivity with the subversion repository, just ‘bzr push’ and Robert is your father’s brother. ‘Bzr update’ will check out changes from the repository.
For straightforward environments, this should suit you just fine with minimal fuss for a lot of satisfaction.