This project has moved and is read-only. For the latest updates, please go here.

How to use Smart Diff with AnkhSVN / Subversion?

Dec 4, 2007 at 5:58 PM
Is there any idea how to use Smart Diff with AnkhSVN or how to use it in general with SubVersion?
Dec 4, 2007 at 6:56 PM
As mentioned on the Smart Diff documentation page, only VSS and TFS are supported at this time. If you install one of those, you should be able to use Smart Diff in "manual" mode where you can have it compare two dtsx files on disk... so you could download an old dtsx version from SubVersion onto disk somewhere, and use Smart Diff to compare the two files on disk.

If there are other people who would like source control providers other than VSS and TFS to be supported, please post a comment here and we will take into consideration for a future release.
Dec 13, 2007 at 12:18 PM

furmangg wrote: use Smart Diff in "manual" mode where you can have it compare two dtsx files on disk...

VSS is installed on my PC because we used it before (And I am very very happy that we changed to Subversion). But if I enable VSS in our projects we could have some problems if there are two version control systems associated with the same project, so this way is not possible.

If Smart Diff could be called from outside BIDS as a standalone application with two parameters (the filenames of two documents to compare) it could be integrated in any version control system and this would be great!

Apr 15, 2010 at 4:10 PM


Apr 15, 2010 at 4:21 PM
Apr 15, 2010 at 6:51 PM
Apr 15, 2010 at 8:24 PM


The good news is that the code is checked in and will be in the next release for you to hook up your own diff viewer to SmartDiff:

My question for you guys... do you have a .exe visual diff viewer that comes with Subversion? If so, what are the possible command line parameters? Is there a way to tell it to diff a local file to the most recent server version? If so, what does the command line for that look like?

Any feedback now (before we do another release) will be valuable input to make sure we've implemented that Preferences pane correctly.

Apr 15, 2010 at 9:00 PM

We use TortoiseSVN:

You can use whatever Diff tool you want (most of us here use WinMerge), but the commands are all the same, apparently:

from any location at the command line:

tortoiseproc /command:diff /path:"C:\EDW\Retail\trunk\Retail ETL\Retail Extract\Retail Extract.sln" [/path2]
This would open the Diff tool specified in the Tortoise settings, and compare the file in /path with the HEAD (most recent) version that's in the source code repository. If you specify a /path2 it would compare to that. /path2 could be a file in the repository, for example. I learned this from the :DIFF entry here:
Personally, I'd be quite satisfied if SmartDiff just supported TortoiseSVN, and just supported comparisons between the working copy (the path to the file you're looking at in BIDS) to the HEAD revision. This will make things a LOT easier for you.
Let me know if you need more info,
(and aconyers and ncasiano, who are my fellow BIDS developers ;))


Apr 15, 2010 at 9:27 PM

In the moment I am in a project with TFS, and the SmartDiff is very very great. I think the way it works with TFS could be the same as with subversion: You could use the same dialog as now for TFS but the version  (Head or whatever) comes not from TFS but from Subversion.ANKH SVN is a tool which integrates Subversion support into BIDS. And there are other tools. I did not investigate how they do. And of course most people use TortoiseSVN with Subversion - so I aggree with rptodd: if it would work with tortoiseSVN this would be a good solution. Diff Tools: any diff tool can be used, I use kdiff3 which can compare not only two but even three files. But for SmartDiff comparing two versions is fine :-)

Apr 27, 2010 at 4:59 AM

We're still looking at this, but in the meantime, someone else has come up with a project to integrate SmartDiff with TortoiseSVN: