mirror of
https://github.com/git/git
synced 2024-10-28 19:25:47 +00:00
3e4f2373b2
Add a winmerge scriptlet with the commands described in [1] so that users can use winmerge without needing to perform any additional configuration. [1] http://thread.gmane.org/gmane.comp.version-control.git/268631 Helped-by: Philip Oakley <philipoakley@iee.org> Helped-by: Johannes Schindelin <johannes.schindelin@gmx.de> Helped-by: Sebastian Schuberth <sschuberth@gmail.com> Helped-by: SZEDER Gábor <szeder@ira.uka.de> Signed-off-by: David Aguilar <davvid@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
36 lines
823 B
Text
36 lines
823 B
Text
diff_cmd () {
|
|
"$merge_tool_path" -u -e "$LOCAL" "$REMOTE"
|
|
return 0
|
|
}
|
|
|
|
merge_cmd () {
|
|
# mergetool.winmerge.trustExitCode is implicitly false.
|
|
# touch $BACKUP so that we can check_unchanged.
|
|
touch "$BACKUP"
|
|
"$merge_tool_path" -u -e -dl Local -dr Remote \
|
|
"$LOCAL" "$REMOTE" "$MERGED"
|
|
check_unchanged
|
|
}
|
|
|
|
translate_merge_tool_path() {
|
|
# Use WinMergeU.exe if it exists in $PATH
|
|
if type -p WinMergeU.exe >/dev/null 2>&1
|
|
then
|
|
printf WinMergeU.exe
|
|
return
|
|
fi
|
|
|
|
# Look for WinMergeU.exe in the typical locations
|
|
winmerge_exe="WinMerge/WinMergeU.exe"
|
|
for directory in $(env | grep -Ei '^PROGRAM(FILES(\(X86\))?|W6432)=' |
|
|
cut -d '=' -f 2- | sort -u)
|
|
do
|
|
if test -n "$directory" && test -x "$directory/$winmerge_exe"
|
|
then
|
|
printf '%s' "$directory/$winmerge_exe"
|
|
return
|
|
fi
|
|
done
|
|
|
|
printf WinMergeU.exe
|
|
}
|