Source Control for 1


It’s obvious that a project with 10 people requires some form of Source Control. But I find source control still very valuable for even my 1-person pet projects, for similar reasons as to why it’s valuable for larger projects:


1. Source-control lets me make more discrete changes.
2. This makes it easier to track down recent regressions. If I notice something just started breaking, I can do a diff to see my recent changes and thus greatly limit my search space for the bug.
3. This also gives me the confidence to make more bold changes. I can see exactly what change I’m making, and in a worst case, I can always revert it.
4. It makes it easier to edit my projects from multiple machines. For example, I may want to do most of my work on my desktop machine at home (when I’m not playing Civ4 on it, of course). But I may also want to do parts of it on my laptop. And I may want to pull up the source from a machine at work see to get a code snippet for something.


So while source control is not an absolute necessity for small 1-person pet projects, it’s still a very useful thing to have.

Comments (6)

  1. Earlier this year I reviewed a number of source-control products for single person projects.

    http://blog.bartholomew.id.au/index.php/articles/source-control-for-home-and-contractors/

  2. MSDNArchive says:

    What source control system would you recommend for Visual Studio 2005 users? Or Visual Studio Express?

  3. Lyle Dodge says:

    For one person projects, I haven’t found a better solution than sourcegear dragnet / vault combo. It’s free for one person, has visual studio 2005 integration, can be used cvs or vss style, issue tracking within visual studio, etc. We bought it for use at my company, and it’s worked great. I setup a server at home to host it, used dyndns and exposed https so i can get to it all from anywhere.

    http://www.sourcegear.com/

  4. jmstall says:

    William / Lyle – thanks for posting the tips!

  5. niel says:

    Have you have you had a look at subversion (http://subversion.tigris.org/) or actually TortoiseSVN (explorer plugin that does not need the svn server running if you working on your local machine)

  6. MIke Fitz says:

    In addition to SCM like SourceSafe I always use a ZIP file. In the batch file used to ZIP the stuff, I use the %DATE% and %TIME% vars to name the file so that the ZIP’s name is unique.

    I have learned not to trust VSS. And now I don’t use it at all. I am using CVS.