File Comparison
File Comparison is the process of compare the difference between files. Commonly this is used when merging source code with a Version Control file repository.
Why use File Comparison Software?
When comparing source between different Visual DataFlex versions it is a HUGE time saver to do this using source code compare tools. Below is a few rules one can use to compare sources between VDF11.1 and VDF12.1
The tips below are for a product called Beyond Compare, but i'm sure your product will do fine too. If you are not using a product for this then GO BUY ONE! it is the best investment you can make EVER.
File Comparison software
There are many different file comparison tools out there, the most commonly used being Beyond Compare. Other alternatives for Windows include Araxis merge, WinDiff and Winmerge.
For Linux users there is Meld.
For a comparison of file comparison tools visit Wikipedia.
Beyond Compare
Beyond Compare is a commonly used File Comparison tool developed by Scooter Software.
How-to set up Beyond Compare
In order to change the rules on how BC compares, you should go into compare source mode and then click on the "guy with the cap" in the toolbar
General Tab Page
Name : DataFlex Associated with: *.src;*.pkg;*.dg;*.vw;*.dd;*.sl;*.ddo;*.rv;*.tt?;*.wo;*.utl;*.nui
x Whitespace includes TABS and spaces
Importance Tab Page
Unimportant text group >> put a check in all of the checkboxes This is also the place where you can add custom rules/filters
Custom filters
1. Ignore differences in comments.
Click on New, Category Delimited Beginning with: // Check "stopping at end of line"
2. Ignore new metadata markup
Click on New, Category Delimited Beginning with: { and ending with: }
3. Ignore "current_object" vs "self" syntax
Click on Regular expressions (?i).*current_object.*|.*self.*
4. Ignore difference between writing "Use foo" and "Use foo.pkg"
Click on Regular expressions (?i)^\s*use\s+.*|^\s*use.*\.pkg
5. Ignore changed writing style for constants: C$_FOO vs C_$FOO
Click on Regular expressions (?i)\s+C\$_.*|\s+C_\$.*
6. Ignore "string" vs. "local string"
Click on Regular expressions (?i)^\s*local\s+string.*|^\s*string.* Replace string with date / integer / number to filter other similar code.
Winmerge
Winmerge is an Open Source file comparison tool.