Agile in small steps #2: Does your project use a version control system?

Posted on April 13th, 2007 in Agile, Agile in small steps by siddharta || 1 Comment

This post is part of the Agile in small steps series. For a complete list of posts in this series, click here.

Okay, this is not an agile specific practice, but I had to put it in only because I’m often baffled by the answer. At first I thought this was a dumb question. Every project uses a version control system right? Right? Well, no.

This never fails to surprise me.

One of my friends who used to work in a large, well known, consulting organisation (>100,000 employees, offices in >40 countries) told me that his project didn’t use version control. All files were placed in a shared folder. To “check out”, you would copy the files to your desktop and make changes. To “check in,” you merge your changes back into the shared folder. Merging was often too much of a hassle, so they just copied the files over. If someone else had made a change… well, they can change it again right? To “update”.. well no one ever did an update anyway. What if you mess up? Simple! Everyday, a dated copy of the folder was made as a “backup”.

At first I was surprised and thought that this was an exception, until I found many people who had a habit of backing up their workspace regularly. When I enquired, I found that the companies that they had previously worked in didnt use version control, and they got into the habit of backing up their workspace.

If there is one simple thing that you can do to ease your development work, it has got to be version control. Subversion is pretty good and its free, so there is absolutely no reason not to have version control on your project. If you have multiple developers working on a project, you just have to have some sort of source control. Heck, I often use it even when I’m working alone.

Here is what version control gives you

  • Store multiple versions of a file (Not much of a version control system without this…)
  • Allow multiple developers to work on the same codebase concurrently
  • See who wrote which part of the code
  • Branch and merge codelines
  • Tag versions so that you can always get back a particular set of files
  • Coordinate all the developers
  • See changes made between any two revisions and who made the change

Apart from storing your source code, you can also use version control to store a whole lot of other stuff like scripts, configuration files, test plans, test cases, requirements and other documents, third party libraries and so on.
With so many benefits, version control is a must have.

Doing Distributed Agile?

Share and collaborate with distributed teams with our electronic agile board tools. Get all the benefits of electronic tools without sacrificing the benefits of physical boards. Supports Scrum taskboards, Kanban boards and user story maps. Check it out!

One Response to “Agile in small steps #2: Does your project use a version control system?”

  1. yeezy shoes Says:

    I and my buddies ended up viewing the excellent tips and hints located on your website and at once got a terrible suspicion I never expressed respect to the website owner for those strategies. My women were totally warmed to study them and already have in truth been having fun with these things. Thank you for turning out to be simply kind and also for finding some wonderful useful guides millions of individuals are really desirous to understand about. Our own sincere apologies for not expressing gratitude to you sooner.

Leave a Reply