One of the oldest problems in software development is keeping track of and understanding what changed between different versions of software. Many modern code repository clients such as TortoiseSVN or ToroiseGit come with the capability to perform a file comparison between the current code and that stored in the repository. While this is an extremely useful feature, it is just an add-on and doesn’t include all of the helpful features that a true file comparison tool would include. For anything more than a simple single file comparison another solution is required!
Fairly frequently I find myself having to discover what code changes my clients made and then having to understand how that code could impact the integrity of the system and ensure that system requirements are still met. The easiest way so far that I have found is to use Beyond Compare. Beyond Compare is a tool specifically focused on comparing a wide range of “file” data. It has the capability to compare folders, text, data, hex, mp3, pictures and more. In addition to comparisons it also has the capability to perform folder synchronizations and to merge text.
The features that I find myself using the most are the folder and text comparisons. These allow me to compare a checked out folder with a previous version. The folder contents (and recursive contents) are analyzed and then only the differences are displayed. By clicking on one of the differences a file viewer opens which then shows the differences found within that file. This is far faster than any comparison tools I’ve found within repository tool sets. Differences can be moved from one file to the next making the merging process fairly straight forward.
One of the best parts about this tool is that it is free to download and try. The trial is based on the number of times you open and use the software instead of a fixed calendar length. This literally can allow a trial to go on for years if the software is used infrequently. When the trial is over the software only costs $50 which is perfect even for individual developers. You can download the trial version from http://www.scootersoftware.com/index.php. Happy comparisons and bug squashing!