Kaleidoscope for git difftool
15,855
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 toKaleidoscope
in our.gitconfig
file.
Related videos on Youtube
Author by
svassr
Updated on September 18, 2022Comments
-
svassr almost 2 years
I tried using kaleidoscope for
git difftool
to compare two branches.So I installed ksdiff and setted it like follow in my
.gitconfig
[diff] tool = kaleidoscope [difftool "kaleidoscope"] cmd = ksdiff --changeset $(cd $(dirname "$LOCAL") && pwd)/$(basename "$LOCAL") $(cd $(dirname "$MERGED") && pwd)/$(basename "$MERGED")
when running
git difftool myBranch otherBranch
I Receive the error
cannot use duplicate files within the same file list
-
stigi over 9 yearsIn my case I also had to add
[merge] tool = Kaleidoscope
to my.gitconfig
. -
Hadeer Zayat over 3 yearsYou can also use
[difftool] prompt = false
(and same for[mergetool]
) in.gitconfig
to always "avoid prompting for asking if we want to use Kaleidoscope for difftool for each file".