Lately I've been learning the git source code control system. It's a distributed version control system, which means there is no central repository. It's especially good for working on multiple branches.
Everyday GIT with 20 Commands
Alas, currently it doesn't work well on Windows. (Due to many of its utilities being written in a hodge-podge of Unix shell scripts. Pretty lame. If they'd just used C, Perl, or Python it would have been very easy to port.)