Archive for the ‘Version Control’ Category

No Version Control? Now what?!

February 27, 2008

Some of the most important aspects of any software implementation are comments/definitions, documentation, and version control. I’m sure we say those are so important because they are often overlooked – they are boring, they are an overhead, they will save your life when you need them.

Most Commercial, off the shelf (COTS) incentive management and ETL solutions will have some form of version control built-in. Sometimes this is a functionality which must be enabled, sometimes “version control” is done via effective dating, and sometimes it can only be performed by a support team. Most applications will also let you export your project files to XML or some other type of file which you can then version control using your corporate application (configuration management).

Why is configuration management so important?
Without going into all the details, configuration management will let you deploy software in a consistent way across your environments (a large implementation will require several distinct environments for different phases of testing and for production). It is important to be able to control your code because it will save you to wonder why the application is working in a test environment and not in production.

Here is something you can do if you need to compare files:
In a previous post I discussed how Textpad could be used to perform vertical selections. This tool will also let you compare two text files, whether they are some SQL DDL files or some project XML files. It is helpful to figure out the difference between two files if they were not versioned.

For this example I created two files called Test1.txt and Test2.txt. In Test2.txt I edited the ID 00005 to 00004 and added row 00077

Test1.txt

Test2.txt

Click on Tools->Compare Files or Press CTRL+F9.

A box asking you for the location of the two files will appear:

You can browse for the location of the first file and of the second file before clicking on “OK”. A result report will be displayed, outlining the differences between each of the files. The following report shows how the file test1.txt has ID 00005 which is not in Test2.txt, and file Test2.txt has IDs 00004 and 00077 which are not in Test1.txt.

I hope this helps, and now you should really consider using a configuration management system.