diff options
author | Junio C Hamano <junkio@cox.net> | 2005-11-23 16:23:11 -0800 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2005-11-23 16:23:11 -0800 |
commit | fbf8ac212caa74fc506434da83f8e9630b09ed12 (patch) | |
tree | 83c073bf924e3d478c98d65b112467c0ae21157b | |
parent | b99a394cd1e7042ad219046a6ea81ad3f93004ca (diff) | |
download | git-fbf8ac212caa74fc506434da83f8e9630b09ed12.tar.gz |
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>
-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 |