I use my own Subversion respository as a means of revision control for all code that I write. The entire repository is private access, though it has a guest password which may be used if needed. For anything I actually want to release, it will be packaged in some form (most likely just a tarball) and put on some public webspace for easy access.