diff options
author | Pelle Wessman <pelle@kodfabrik.se> | 2010-05-07 21:21:25 +0200 |
---|---|---|
committer | Avery Pennarun <apenwarr@gmail.com> | 2010-05-07 15:59:56 -0400 |
commit | 448e71e2637e0d7546fb0a2b386e74bc7aa93be8 (patch) | |
tree | e21402bf298cd2a9084fdbe52c78150595bc6f2c /git-subtree.sh | |
parent | Added new 'push' command and 2-parameter form of 'add'. (diff) | |
download | tgif-448e71e2637e0d7546fb0a2b386e74bc7aa93be8.tar.xz |
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.
Diffstat (limited to 'git-subtree.sh')
-rwxr-xr-x | git-subtree.sh | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/git-subtree.sh b/git-subtree.sh index 501c6dc2f1..b7c350107e 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 } |