From: Pelle Wessman Date: Fri, 7 May 2010 19:21:25 +0000 (+0200) Subject: Use 'git merge -Xsubtree' when git version >= 1.7.0. X-Git-Tag: v1.7.11-rc0~176^2~13^2~1 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=448e71e2637e0d7546fb0a2b386e74bc7aa93be8;p=git.git Use 'git merge -Xsubtree' when git version >= 1.7.0. It's possible to specify the subdir of a subtree since Git 1.7.0 - adding support for that functionality to make the merge more stable. Also checking for git version - now only uses the new subtree subdir option when on at least 1.7. --- diff --git a/git-subtree.sh b/git-subtree.sh index 501c6dc2f..b7c350107 100755 --- a/git-subtree.sh +++ b/git-subtree.sh @@ -634,11 +634,20 @@ cmd_merge() debug "New squash commit: $new" rev="$new" fi - - if [ -n "$message" ]; then - git merge -s subtree --message="$message" $rev + + version=$(git version) + if [ "$version" \< "git version 1.7" ]; then + if [ -n "$message" ]; then + git merge -s subtree --message="$message" $rev + else + git merge -s subtree $rev + fi else - git merge -s subtree $rev + if [ -n "$message" ]; then + git merge -Xsubtree="$prefix" --message="$message" $rev + else + git merge -Xsubtree="$prefix" $rev + fi fi }