@matheusbsbs / matheus-bagliano / commits / 448e71e263
Fork 0

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.

Pelle Wessman committed May 7, 2010 at 21:21 UTC 448e71e2637e0d7546fb0a2b386e74bc7aa93be8
1 file changed +13 -4
git-subtree.sh
+13 -4
@@ -634,11 +634,20 @@ cmd_merge()
634 debug "New squash commit: $new"
635 rev="$new"
636 fi
637 -
638 - if [ -n "$message" ]; then
639 - git merge -s subtree --message="$message" $rev
637 +
638 + version=$(git version)
639 + if [ "$version" \< "git version 1.7" ]; then
640 + if [ -n "$message" ]; then
641 + git merge -s subtree --message="$message" $rev
642 + else
643 + git merge -s subtree $rev
644 + fi
645 else
641 - git merge -s subtree $rev
646 + if [ -n "$message" ]; then
647 + git merge -Xsubtree="$prefix" --message="$message" $rev
648 + else
649 + git merge -Xsubtree="$prefix" $rev
650 + fi
651 fi
652 }
653