Red Gate Scream
From RedGateWiki
One of the things that seems to be missing from large scale database development is the ability to really see the differences from one version of the database to the next. Now of course SQL Compare can take snapshots and these snapshots can be stored in a source control system but in order to compare two different versions you have to retrieve both versions to disk and then open SQL Compare load the two snapshots and then have a look. This is both time consuming and a little roundabout.
So what we now have is a little utility based on the technology of SQL Compare that can be downloaded for free here which you can integrate into your source control system as the default difference tool. What this will do is check to see if the two files passed as arguments are snapshots and if they are it will show you how they differ but without any of the synchronisation SQL that SQL Compare gives you ( after all it's free you know ;) ). If the files aren't SQL Compare snapshot files then the program can pass the files onto your favourite diff tool ( I recommend WinMerge for text based files ) or a different diff tool controlled by the extension of the file.
Feel free to download Red Gate Scream and distribute it around your organisation for anybody who might need to see the differences between snapshot files.
If you have any other ideas to make this tool more useful or indeed other tools that you would like to see Red Gate produce feel free to comment here or go to our forums. Please note that Red Gate Scream is not an officially supported product.
As an example we use Source Gear Vault here. The settings that I have configured are...
Program: C:\Program Files\Red Gate\Red Gate Scream\RedGate.Scream.exe Arguments: "%LEFT_PATH%" "%RIGHT_PATH%" /n1 "%LEFT_LABEL%" /n2 "%RIGHT_LABEL%" "%LEFT_LABEL%" "%RIGHT_LABEL%"
Then in Red Gate Scream I have the following setup as my default diff tool...
Extension: default Command Line: "C:\Program Files\WinMerge\WinMerge.exe" Arguments: /ub /wl "%1" "%2" /dl "%3" /dr "%4"
Notice how the command arguments from Source Gear "%LEFT_PATH%" maps to %1 for Red Gate Scream. The first two arguments to Red Gate Scream are always the paths of the left and right files. The arguments after that are available to be passed on to the next diff tool as %3,%4,...,%n. From version 0.3 you can also have the optional arguments /n1 and /n2 these control the names of the comparisons in the scream tool itself. Even though these arguments may or may not be there the arguments following them will still be referred to as %3 and %4 even though they are in fact %5 and %6, it just makes it easier I find.
It seems that SourceSafe version 6 doesn't allow external diff tools to be integrated so if you're using that I'd advise you upgrade to 2005 which does. The settings that I've got to work are...
Operation: File Difference File Extension: .snp CommandLine: "C:\Program Files\Red Gate\Red Gate Scream\RedGate.Scream.exe" %1 %2
Please notice the lack of quotes around the %1 and %2 arguments as if these are present SourceSafe for some reason decides not to escape the file paths when comparing against a local file - how bizarre.
Have fun....
PS If you have a better name for the product or find it useful please let me know :).
Support and feedback
Please post any feedback to the forum
