diff options
Diffstat (limited to 'git-merge.sh')
-rwxr-xr-x | git-merge.sh | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/git-merge.sh b/git-merge.sh index 7f481e4caa..255476e2de 100755 --- a/git-merge.sh +++ b/git-merge.sh @@ -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 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 ;; 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 |