Skip to content

Commit

Permalink
mergetools/meld: Use '--output' when available
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
David Aguilar authored and Junio C Hamano committed Aug 19, 2011
1 parent bc7a96a commit f61bd9c
Showing 1 changed file with 24 additions and 1 deletion.
25 changes: 24 additions & 1 deletion mergetools/meld
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,30 @@ diff_cmd () {
}

merge_cmd () {
if test -z "${meld_has_output_option:+set}"
then
check_meld_for_output_version
fi
touch "$BACKUP"
"$merge_tool_path" "$LOCAL" "$MERGED" "$REMOTE"
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
}

0 comments on commit f61bd9c

Please sign in to comment.