rebase--interactive: don't require what's rebased to be a branch
git rebase allows you to specify a non-branch commit-ish as the "branch" argument, which leaves HEAD detached when it's finished. This is occasionally useful, and this patch brings the same functionality to git rebase --interactive. Signed-off-by: Dave Olszewski <cxreg@pobox.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
3a27f415df
commit
2ec33cdd19
@ -783,8 +783,6 @@ first and then run 'git rebase --continue' again."
|
||||
|
||||
if test ! -z "$1"
|
||||
then
|
||||
output git show-ref --verify --quiet "refs/heads/$1" ||
|
||||
die "Invalid branchname: $1"
|
||||
output git checkout "$1" ||
|
||||
die "Could not checkout $1"
|
||||
fi
|
||||
|
@ -553,4 +553,13 @@ test_expect_success 'reword' '
|
||||
git show HEAD~2 | grep "C changed"
|
||||
'
|
||||
|
||||
test_expect_success 'rebase while detaching HEAD' '
|
||||
git symbolic-ref HEAD &&
|
||||
grandparent=$(git rev-parse HEAD~2) &&
|
||||
test_tick &&
|
||||
FAKE_LINES="2 1" git rebase -i HEAD~2 HEAD^0 &&
|
||||
test $grandparent = $(git rev-parse HEAD~2) &&
|
||||
test_must_fail git symbolic-ref HEAD
|
||||
'
|
||||
|
||||
test_done
|
||||
|
Loading…
Reference in New Issue
Block a user