From f61bd9c68a4ed81afcc1fbbf5b956e781d88b434 Mon Sep 17 00:00:00 2001 From: David Aguilar Date: Fri, 19 Aug 2011 02:14:45 -0700 Subject: [PATCH] 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 Signed-off-by: Junio C Hamano --- mergetools/meld | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/mergetools/meld b/mergetools/meld index 73d70ae28..eaa115ccb 100644 --- a/mergetools/meld +++ b/mergetools/meld @@ -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 ' 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 +} -- 2.30.2