I found a way to configure it. In Kaleidoscope itself under Kaleidoscope menu there is a link called Integration which open a configuration window for several versioning solutions.
After installing ksdiff clicking on Configure button will add the following lines to your .gitconfig
file.
[diff]
tool = Kaleidoscope
[difftool "Kaleidoscope"]
cmd = ksdiff --partial-changeset --relative-path \"$MERGED\" -- \"$LOCAL\" \"$REMOTE\"
[merge]
tool = Kaleidoscope
[mergetool "Kaleidoscope"]
cmd = ksdiff --merge --output \"$MERGED\" --base \"$BASE\" -- \"$LOCAL\" --snapshot \"$REMOTE\" --snapshot
trustExitCode = true
then running the following command will open successively each different file
git difftool myBranch otherBranch -y -t Kaleidoscope
--
Notes:
-y
stands to avoid prompting for asking if we want to use Kaleidoscope for difftool for each file. Default answer is "yes".
-t Kaleidoscope
is optionnal here as default difftool is already set to Kaleidoscope
in our .gitconfig
file.
1In my case I also had to add
[merge] tool = Kaleidoscope
to my.gitconfig
. – stigi – 2015-02-18T19:44:58.483