Code

merge-recur: Convert variable names to lower_case
[git.git] / git-merge.sh
index fc25f8dda01ecf4733165308d9fb1fa80dffbe0c..9b681159dcd5e1e22886d101306e496528cb60a4 100755 (executable)
@@ -9,15 +9,20 @@ USAGE='[-n] [--no-commit] [--squash] [-s <strategy>]... <merge-message> <head> <
 LF='
 '
 
-all_strategies='recursive octopus resolve stupid ours'
-default_twohead_strategies='recursive'
+all_strategies='recursive recur octopus resolve stupid ours'
+case "${GIT_USE_RECUR_FOR_RECURSIVE}" in
+'')
+       default_twohead_strategies=recursive ;;
+?*)
+       default_twohead_strategies=recur ;;
+esac
 default_octopus_strategies='octopus'
 no_trivial_merge_strategies='ours'
 use_strategies=
 
 index_merge=t
 if test "@@NO_PYTHON@@"; then
-       all_strategies='resolve octopus stupid ours'
+       all_strategies='recur resolve octopus stupid ours'
        default_twohead_strategies='resolve'
 fi
 
@@ -103,13 +108,17 @@ do
        -s|--s|--st|--str|--stra|--strat|--strate|--strateg|--strategy)
                case "$#,$1" in
                *,*=*)
-                       strategy=`expr "$1" : '-[^=]*=\(.*\)'` ;;
+                       strategy=`expr "z$1" : 'z-[^=]*=\(.*\)'` ;;
                1,*)
                        usage ;;
                *)
                        strategy="$2"
                        shift ;;
                esac
+               case "$strategy,${GIT_USE_RECUR_FOR_RECURSIVE}" in
+               recursive,?*)
+                       strategy=recur ;;
+               esac
                case " $all_strategies " in
                *" $strategy "*)
                        use_strategies="$use_strategies$strategy " ;;