How do I store my previously-written code?
Slashdot | How Do You Store Your Previously-Written Code? asks a fairly simple question.
With a fairly simple response:
Subversion. I do Subversion for a living. You may choose another version control system, such as DARCS or SVK, but I use Subversion. I organize my code in:
trunk/ branches/ tags/
form, which allows me to perform most common repository operations (merge, branch, tag) fairly quickly and without worries.
After I’ve pronounced a release stable enough, I tag the release (by copying the trunk/ into tags/release-x.y.z. Then, I check it out, and make a tarball out of it, which I place on a separate folder.
Each project gets its own repository. Each project also gets a unique folder named after the project’s name, which usually contains a TO-DO list in text form, a checkout of the trunk/ for that project’s repository, and assorted files and documentations (or symbolic links to my knowledge base folder, Information collection). In each project folder, I also have a subfolder which contains each release in source tarball form, and (if the project needs compilation for a target platform) the compiled installable packages (.tar.gz, or RPM)
I help myself by using Trac. It couples fairly well with Subversion, letting me know how my project is evolving, and letting me see colored differences for each revision.
All in all, use a version control system. That, along with regular backups, ensures you have full productivity and complete history of your work.
February 17th, 2006 at 5:24
This would have been good as a slashdot comment!
February 17th, 2006 at 5:44
Perhaps you could take time out from looking like a second-rate extra from Miami Vice [a popular 80s cop show - Ed] and explain what the branches/ directory is for.
February 17th, 2006 at 11:20
Pageview link whoring is a popular passtime at slashdot. I’m happy to see that you haven’t put anything on your web page that you couldn’t have posted as a comment (that would spoil the fun).
February 18th, 2006 at 19:22
Dude, read the Subversiono Booko (Version control with Subversion) to find out what is a branch and how it is useful.