diff --git a/git-merge.sh b/git-merge.sh
index e50fbb1160ad6ccfebc0d65fcc54bc3488e597cd..0a158ef779eb8717f27e632e31726f00586979ed 100755 (executable)
--- a/git-merge.sh
+++ b/git-merge.sh
esac
result_tree= best_cnt=-1 best_strategy= wt_strategy=
+merge_was_ok=
for strategy in $use_strategies
do
test "$wt_strategy" = '' || {
exit=$?
if test "$no_commit" = t && test "$exit" = 0
then
+ merge_was_ok=t
exit=1 ;# pretend it left conflicts.
fi
done >"$GIT_DIR/MERGE_HEAD"
echo $merge_msg >"$GIT_DIR/MERGE_MSG"
-die "Automatic merge failed/prevented; fix up by hand"
+if test "$merge_was_ok" = t
+then
+ echo >&2 \
+ "Automatic merge went well; stopped before committing as requested"
+ exit 0
+else
+ die "Automatic merge failed; fix up by hand"
+fi