git-commit-vandalism/mergetools/meld
David Aguilar f61bd9c68a mergetools/meld: Use '--output' when available
meld 1.5.0 and newer allow the output file to be specified
when merging multiple files.  Check whether the meld command
supports '--output' and use it when available.

Signed-off-by: David Aguilar <davvid@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-19 10:52:16 -07:00

33 lines
680 B
Plaintext

diff_cmd () {
"$merge_tool_path" "$LOCAL" "$REMOTE"
}
merge_cmd () {
if test -z "${meld_has_output_option:+set}"
then
check_meld_for_output_version
fi
touch "$BACKUP"
if test "$meld_has_output_option" = true
then
"$merge_tool_path" --output "$MERGED" \
"$LOCAL" "$BASE" "$REMOTE"
else
"$merge_tool_path" "$LOCAL" "$MERGED" "$REMOTE"
fi
check_unchanged
}
# Check whether 'meld --output <file>' is supported
check_meld_for_output_version () {
meld_path="$(git config mergetool.meld.path)"
meld_path="${meld_path:-meld}"
if "$meld_path" --output /dev/null --help >/dev/null 2>&1
then
meld_has_output_option=true
else
meld_has_output_option=false
fi
}