diff options
author | Sebastian Schuberth <sschuberth@gmail.com> | 2012-08-10 10:21:06 +0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2012-08-10 08:08:08 -0700 |
commit | 755e8b3f35e3991a735a6be740eda4567d45a741 (patch) | |
tree | 309cbe2e12421c3e8d274c2133de1d04a97714f1 | |
parent | 7a30747fbacd9a2059e861cba80ebd67685ffe80 (diff) | |
download | git-755e8b3f35e3991a735a6be740eda4567d45a741.tar.gz git-755e8b3f35e3991a735a6be740eda4567d45a741.tar.xz |
Add Code Compare v2.80.4 as a merge / diff tool for Windows
Code Compare is a commercial file comparison tool for Windows, see
http://www.devart.com/codecompare/
Version 2.80.4 added support for command line arguments preceded by a
dash instead of a slash. This is required for Git for Windows because
slashes in command line arguments get mangled with according to these
rules:
http://www.mingw.org/wiki/Posix_path_conversion
Signed-off-by: Sebastian Schuberth <sschuberth@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rwxr-xr-x | contrib/completion/git-completion.bash | 2 | ||||
-rw-r--r-- | git-mergetool--lib.sh | 2 | ||||
-rw-r--r-- | mergetools/codecompare | 25 |
3 files changed, 27 insertions, 2 deletions
diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash index 2e1b5e14b..820ac738c 100755 --- a/contrib/completion/git-completion.bash +++ b/contrib/completion/git-completion.bash @@ -1319,7 +1319,7 @@ _git_diff () } __git_mergetools_common="diffuse ecmerge emerge kdiff3 meld opendiff - tkdiff vimdiff gvimdiff xxdiff araxis p4merge bc3 + tkdiff vimdiff gvimdiff xxdiff araxis p4merge bc3 codecompare " _git_difftool () diff --git a/git-mergetool--lib.sh b/git-mergetool--lib.sh index ed630b208..0bbfcb144 100644 --- a/git-mergetool--lib.sh +++ b/git-mergetool--lib.sh @@ -126,7 +126,7 @@ guess_merge_tool () { else tools="opendiff kdiff3 tkdiff xxdiff meld $tools" fi - tools="$tools gvimdiff diffuse ecmerge p4merge araxis bc3" + tools="$tools gvimdiff diffuse ecmerge p4merge araxis bc3 codecompare" fi case "${VISUAL:-$EDITOR}" in *vim*) diff --git a/mergetools/codecompare b/mergetools/codecompare new file mode 100644 index 000000000..3f0486bc8 --- /dev/null +++ b/mergetools/codecompare @@ -0,0 +1,25 @@ +diff_cmd () { + "$merge_tool_path" "$LOCAL" "$REMOTE" +} + +merge_cmd () { + touch "$BACKUP" + if $base_present + then + "$merge_tool_path" -MF="$LOCAL" -TF="$REMOTE" -BF="$BASE" \ + -RF="$MERGED" + else + "$merge_tool_path" -MF="$LOCAL" -TF="$REMOTE" \ + -RF="$MERGED" + fi + check_unchanged +} + +translate_merge_tool_path() { + if merge_mode + then + echo CodeMerge + else + echo CodeCompare + fi +} |