Using Version Control for Home Development

svn

Up till now I have been developing my personal and school
projects at home without using any form of revision control
software to handle my changes and whatnot.

My question is, how feasible is it to use a Version
Control application
(such as TortoiseSVN) for
personal projects I do for myself
(and even school
projects) ?

Is it worth the hassle of checking in, committing changes
and all that routine, just for 'home-projects' instead of
just making manual backups?

Links:

Best Answer

Completely.

Credits also to http://blogs.embarcadero.com/nickhodges/2010/04/23/39416:

  • Sometimes we do stupid mistakes. Having a source control safety net is a must.
  • Tag important milestones. Even in home development you may want to mark a set of files and revisions as being a specific software version.
  • You train for your professional life. Putting in your head the work methodology associated with using source control prepares you professionally.
  • Storage efficiency. Current source control systems store revisions as a delta difference to the previous revision. This means that it is more disk efficient as the entire file is not stored but only the differences.
  • You have the history for all your source tree. You can rapidly see what was changed and when was changed. Compare files from different revisions and merge easily.
  • You can branch to experiment. If you have some experiments in mind you can create a branch (a new independent development line) and test it. In the end, if you are satisfied with the results, merge it in the HEAD (main development line). You get all this for free without having to create a copy and receive the same benefits from using the source control even while experimenting.
Related Topic