contrib/subtree: Handle '--prefix' argument with a slash appended
'git subtree merge' will fail if the argument of '--prefix' has a slash appended. Signed-off-by: Techlive Zheng <techlivezheng@gmail.com> Signed-off-by: David A. Greene <greened@obbligato.org> Signed-off-by: Jeff King <peff@peff.net>
This commit is contained in:
parent
43711746bd
commit
d16031caf1
@ -90,7 +90,7 @@ while [ $# -gt 0 ]; do
|
||||
--annotate) annotate="$1"; shift ;;
|
||||
--no-annotate) annotate= ;;
|
||||
-b) branch="$1"; shift ;;
|
||||
-P) prefix="$1"; shift ;;
|
||||
-P) prefix="${1%/}"; shift ;;
|
||||
-m) message="$1"; shift ;;
|
||||
--no-prefix) prefix= ;;
|
||||
--onto) onto="$1"; shift ;;
|
||||
|
@ -257,6 +257,26 @@ test_expect_success 'merge the added subproj again, should do nothing' '
|
||||
)
|
||||
'
|
||||
|
||||
next_test
|
||||
test_expect_success 'merge new subproj history into subdir/ with a slash appended to the argument of --prefix' '
|
||||
test_create_repo "$test_count" &&
|
||||
test_create_repo "$test_count/subproj" &&
|
||||
test_create_commit "$test_count" main1 &&
|
||||
test_create_commit "$test_count/subproj" sub1 &&
|
||||
(
|
||||
cd "$test_count" &&
|
||||
git fetch ./subproj master &&
|
||||
git subtree add --prefix=subdir/ FETCH_HEAD
|
||||
) &&
|
||||
test_create_commit "$test_count/subproj" sub2 &&
|
||||
(
|
||||
cd "$test_count" &&
|
||||
git fetch ./subproj master &&
|
||||
git subtree merge --prefix=subdir/ FETCH_HEAD &&
|
||||
check_equal "$(last_commit_message)" "Merge commit '\''$(git rev-parse FETCH_HEAD)'\''"
|
||||
)
|
||||
'
|
||||
|
||||
#
|
||||
# Tests for 'git subtree split'
|
||||
#
|
||||
|
Loading…
Reference in New Issue
Block a user