Showing posts with label Subversion. Show all posts
Showing posts with label Subversion. Show all posts

Sunday, 17 May 2009

Forcing comments in Subversion

While administering Subversion is a simple task, getting all developers to add comments to their subversion is not. The importance of having comments while checking-in their code helps especially in an Agile environment where in there may be several check ins during the day and comments are an important tool in communicating what was done. Fortunately for those forgetful developers, there is help at hand to enforce commenting during a check-in.

A simple script available in a dormant form with every Subversion installation works the magic. The operation of the script is explained very clearly in this blog post. The script is present in the pre-commit.tmpl file in the /{repository-location}/hooks/ directory. To get it to fire, make sure the script has commands that are valid DOS commands (if you are in a Windows environment) AND re-name the file to pre-commit.bat. That's it. Every check-in will require a comment!!

Sunday, 12 August 2007

Subversion : The next generation of version control systems

Subversion has been gaining popularity as a robust and easy-to-manage version system over the last few years but are there specific advantages for a project to use Subversion as a source code control system? This post briefly examines some of the benefits of using Subversion and brings together a collection of resources that can be used to understand, set-up and start using Subversion as a version control system.

What is Subversion?

Subversion is a version control system which maintains different versions of your documents and files, allowing you to get the latest versions or previous versions easily.

Some of the major advantages for using Subversion are:
  1. It is open-source and thus is free.
  2. Setting up Subversion and managing users is a simple affair.
  3. Subversion is rated to handle binary files comparatively better to the widely used Concurrent Versions System. Thus, image files can be handled better.
  4. Subversion can be integrated with Eclipse using a plug-in named Subclipse, which is useful for developers who like working from within an IDE.
  5. An open-source client (TortoiseSVN) makes accessing and using Subversion from Windows systems easy. Tortoise operates as a windows-shell client and is integrated into the windows explorer.
Some strong testimonials and user experiences are given on this page. On a personal note, I have used Subversion in about 5 projects over the last two years have found it to be a very robust and easy to use source control system.

Using Subversion

Subversion is based on a client-server model, which means that a server process actually monitors and manages access to your files.

( Note: you can also run Subversion as a standalone program to store your personal files but if you choose to do so, you will not be able to access your files from other systems. This article is describing a scenario where you would want to access your files from multiple systems.)

To set up a subversion server, follow the steps outlined in this excellent post.

If you have installed the Subversion server successfully (with Apache), then install a client that will be used to access and modify the files managed by Subversion. To keep things simple, we will focus on setting up Tortoise SVN ( a Subversion client) and use it

To set up the subversion client (TortoiseSVN), follow the steps outlined in this post.

Once you have a server and client system setup, you can access Subversion, check out and check in files, as many times as you like.

Subversion / TortoiseSVN resources
  1. Subversion Homepage
  2. TortoiseSVN Homepage
  3. Subclipse download page