I have been using Git for my personal projects for a while now. I like how, since it doesn't have a centralized architecture, when working on single developer projects it basically feels like a system for keeping track of notes on what you were doing and organizing files so you can try new things easily. It is made for collaboration though, and I have not used it much for that.
I did, however, just move a bunch of snapshots of my supervisors simulation code into a git repo. This had the effect of organizing all of my files nicely and in one spot, provided a natural place to put weird side versions (as abandoned branches), as well as cutting about 1 GiB of files into around 20 MiB since versioned snapshots are basically 90% or more the same. In addition, I am hoping that the merge tools will allow me to reduce the number of times I will have a directory labeled v1.36, one labeled v1.36_matt, and one labeled v1.36_robert.
Next time a colleague sends me a new version, I will just create a temporary branch, merge it into my current version, and tag it with the new version number. So, even though I doubt that my supervisor will ever be able to spend the time to learn how to use Git, I think I will be able to use it to organize things on my end, which makes me a bit happier.