Integrating DeltaWalker with Configuration Management (CM), Source Control (SC) and other applications is achieved by driving DeltaWalker via command line arguments. In general, when given one, two, or three file or folder paths as command line parameters DeltaWalker detects their type and count and opens them accordingly.
Here is a list of applications DeltaWalker has been tested with:
Mac OS X
Instruct Bazaar to use DeltaWalker as its external diff tool by adding the following to Bazaar's configuration file~/.bazaar/bazaar.conf
:
[ALIASES] dwdiff = diff --using dw-bzrCreate a shell script file named
dw-bzr
and place it somewhere on your path e.g.
/usr/local/bin/
on Mac OS X and Linux.
dw-bzr:
#!/bin/sh /Applications/DeltaWalker.app/Contents/MacOS/DeltaWalker -nosplash "$1" "$2"
You should now be able to run bzr dwdiff in your local Bazaar branch just like you would bzr diff.
Mac OS X
Instruct Git to use DeltaWalker as its external diff and merge tool by adding the following to Git's global configuration file~/.gitconfig
:
[diff] external = /usr/local/bin/git-diff-dw [merge] tool = deltawalker [mergetool "deltawalker"] cmd = /usr/local/bin/git-merge-dw "$LOCAL" "$REMOTE" "$BASE" "$MERGED"
Create two shell script files:
git-diff-dw
git-merge-dw
diff
and the
merge
commands, respectively, to the order expected by DeltaWalker. In the above
example, the files are expected to be in /usr/local/bin/
; if you place them elsewhere, make
sure their location is updated in the ~/.gitconfig
. The files should have the
following content:
git-diff-dw:
#!/bin/sh /Applications/DeltaWalker.app/Contents/MacOS/DeltaWalker -nosplash "$2" "$PWD/$5"
git-merge-dw:
#!/bin/sh /Applications/DeltaWalker.app/Contents/MacOS/DeltaWalker -nosplash "$PWD/$1" "$2" "$3" -merged="$4"
Note that you still need to save the contents of the Ancestor window using either the Save menu, button, or shortcut for DeltaWalker to save it in the location specified by the 'merged' parameter.
To have each pair/triplet of files sent to DeltaWalker for comparison appear in a new tabbed window, as opposed to in a new application instance, make sure that the preference DeltaWalker > Preferences > File Comparison > Editing > "Notify me when files are deleted or moved on disk" is unchecked. Note that opening files for comparison in tabbed windows is significantly faster than opening them in separate DW instances.
Mac OS X
Instruct Mercurial to use DeltaWalker as its external diff and merge tool by adding the following to Mercurial's configuration file~/.hgrc
:
[extensions] hgext.extdiff = [extdiff] cmd.deltawalker = /usr/local/bin/hg-diff-dw [merge-tools] deltawalker.executable = /usr/local/bin/hg-merge-dw deltawalker.args = $local $other $base $output
Create the shell script hg-diff-dw
and place it in /usr/local/bin/
;
if you place it elsewhere, make sure its location is updated in the ~/.hgrc
.:
hg-diff-dw:
#!/bin/sh /Applications/DeltaWalker.app/Contents/MacOS/DeltaWalker -nosplash "$PWD/$1" "$PWD/$2"
Version Control with Subversion provides the definitive guide to Subversion and its Using External Differencing Tools section gives a detailed explanation on the topic of integration with external diff tools.
The easiest way to configure the Subversion command-line tool (svn) to use DeltaWalker is
to modify the Subversion configuration file: ~/.subversion\config
(Mac OS X) or
%APPDATA%\Subversion\config
(Windows). Uncomment out, or add if missing, the lines shown below
and set their values accordingly e.g.:
Mac OS X
diff-cmd = /usr/local/bin/svn-diff-dw diff3-cmd = /usr/local/bin/svn-diff3-dw
Windows
diff-cmd = "C:\Program Files\Deltopia\DeltaWalker 1.8\svn-diff-dw.bat" diff3-cmd = "C:\Program Files\Deltopia\DeltaWalker 1.8\svn-diff3-dw.bat"
Create the above-referenced wrapper scripts:
Mac OS X
svn-diff-dw
:
#!/bin/sh /Applications/DeltaWalker.app/Contents/MacOS/DeltaWalker -nosplash "$PWD/$6" "$PWD/$7"
svn-diff3-dw
:
#!/bin/sh /Applications/DeltaWalker.app/Contents/MacOS/DeltaWalker -nosplash "$PWD/$9" "$PWD/$11" "$PWD/$10"
Windows
svn-diff-dw.bat
:
@echo off "C:\Program Files\Deltopia\DeltaWalker 1.8\DeltaWalker.exe" -nosplash %6 %7
svn-diff3-dw.bat
:
@echo off shift shift "C:\Program Files\Deltopia\DeltaWalker 1.8\DeltaWalker.exe" -nosplash %7 %9 %8As a result subsequent calls to
svn diff
and svn diff3
commands will
launch DeltaWalker. Note however that DW does not return a different exit code when a three-way
comparison detects a conflict. Subversion checks that return code in order to determine whether
it should launch a different tool to handle the three-way merge.
Go to Tools > Personal Options... In the Options dialog select the File tab then locate the Alternate Applications button near the bottom left corner. In the Alternate Applications dialog check the Comparison Utility checkbox, if not checked, then either type the path to the DeltaWalker executable or use the browse (...) button to bring up the Select File dialog select it. In the Options text field immediately below supply the following options:
-nosplash $file1 $file2
Open the WinCVS preferences—in ver. 2.0.2 go to Admin > Preferences... then select the WinCVS tab. In the Programs group box, check the External diff option, then either type the path to the DeltaWalker executable or use the browse button to bring up the Select File dialog and navigate to it. If you have installed DeltaWalker using the MSI installer accepting all defaults, the path to DeltaWalker.exe should be:
C:\Program Files\Deltopia\DeltaWalker 1.8\DeltaWalker.exe
Macromedia Dreamweaver supports external file comparison tools and documents the integration steps in its help—just type "diff tool" in the help search field and the associated topic should come up. In a nutshell, these are the steps:
Mac OS X
Macintosh HD:Applications:DeltaWalker.app:Contents:MacOS:DeltaWalker
Windows
C:\Program Files\Deltopia\DeltaWalker 1.8\DeltaWalker.exe
/
remains):
Applications/DeltaWalker.app/Contents/MacOS/DeltaWalkerthen select the DeltaWalker executable from the list.
You should now be able to use DeltaWalker as your XCode's external diff tool.