merge script: handle -m --log correctly
Based on v1.7.1.1~23^2 (merge: --log appends shortlog to message if specified, 2010-05-11). Without this change, the scripted (non-builtin) merge does not pass t7604. Cc: Tay Ray Chuan <rctay89@gmail.com> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Jonathan Nieder committed
Aug 17, 2010 at 02:06 UTC
eeb70b6769ad484989c8708a85fef112726a35e1
1 file changed
+10
-4
contrib/examples/git-merge.sh
+10
-4
@@ -294,12 +294,18 @@ else
294
# the given message. If remote is invalid we will die
295
# later in the common codepath so we discard the error
296
# in this loop.
297
- merge_name=$(for remote
297
+ merge_msg="$(
298
+ for remote
299
do
300
merge_name "$remote"
300
- done | git fmt-merge-msg $log_arg
301
- )
302
- merge_msg="${merge_msg:+$merge_msg$LF$LF}$merge_name"
301
+ done |
302
+ if test "$have_message" = t
303
+ then
304
+ git fmt-merge-msg -m "$merge_msg" $log_arg
305
+ else
306
+ git fmt-merge-msg $log_arg
307
+ fi
308
+ )"
309
fi
310
head=$(git rev-parse --verify "$head_arg"^0) || usage
311