I\'m working on a project:
I recommend using bzr as it works best for someone who is just using it for their own code (not a team) as it doesn't require backing up to a server (all revisions are stored with each "branch")...
As far as the benefit, its so you can roll-back changes in the code to any point in time, so if you do daily backups, you can roll-back the code to get it from any day that you made a backup. This way you can feel comfortable re-writing code or deleting old code that you think you won't need but if you do end up needing it again it is accessible. For larger projects it helps with debugging since, if a new feature makes a bug appear you can roll-back to earlier if needed.