Browse Source

git-merge: make recursive the default strategy

git-pull invoked merge with recursive as the default strategy
for some time now; match it in the git-merge itself.  Also avoid
listing more than one strategy on default because we have only
one strategy that can resolve an octopus and we are already
counting heads here.  This reduces the need to stash away local
modifications.

Signed-off-by: Junio C Hamano <junkio@cox.net>
maint
Junio C Hamano 19 years ago
parent
commit
fbf8ac212c
  1. 20
      git-merge.sh

20
git-merge.sh

@ -12,10 +12,8 @@ usage () { @@ -12,10 +12,8 @@ usage () {
die "git-merge [-n] [--no-commit] [-s <strategy>]... <merge-message> <head> <remote>+"
}

# all_strategies='resolve recursive stupid octopus'

all_strategies='recursive octopus resolve stupid ours'
default_strategies='resolve octopus'
default_strategies='recursive'
use_strategies=

dropsave() {
@ -90,11 +88,6 @@ do @@ -90,11 +88,6 @@ do
shift
done

case "$use_strategies" in
'')
use_strategies=$default_strategies
;;
esac
test "$#" -le 2 && usage ;# we need at least two heads.

merge_msg="$1"
@ -185,6 +178,17 @@ case "$#,$common,$no_commit" in @@ -185,6 +178,17 @@ case "$#,$common,$no_commit" in
;;
esac

case "$use_strategies" in
'')
case "$#" in
1)
use_strategies="$default_strategies" ;;
*)
use_strategies=octopus ;;
esac
;;
esac

# At this point, we need a real merge. No matter what strategy
# we use, it would operate on the index, possibly affecting the
# working tree, and when resolved cleanly, have the desired tree

Loading…
Cancel
Save