Git is a distributed verision control system. Highly recommended. There is an excellent tutorial, or you can take a look at my notes (best viewed in Emacs org-mode). See git-publish.py for a useful Git public-repository setup script.
I've published Git repositories for most of my more involved projects.
You can download a repo with
git clone http://www.physics.drexel.edu/~wking/code/git/<repo-name> <local-dir>
git clone http://www.physics.drexel.edu/~wking/code/git/sawsim.git sawsim
Of course, traditional tarballs, zips, etc. are also available through the web interface.
I've also written up a few scripts to automate common Git tasks:
- git-unmerged-branches.sh lists unmerged branches