This teaches the new "@{-1} syntax to refer to the previous branch to "git
branch". After looking at somebody's faulty patch series on a topic
branch too long, if you decide it is not worth merging, you can just say:
$ git checkout master
$ git branch -D @{-1}
to get rid of it without having to type the name of the topic you now hate
so much for wasting a lot of your time.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
27 lines
628 B
Bash
Executable File
27 lines
628 B
Bash
Executable File
#!/bin/sh
|
|
|
|
test_description='previous branch syntax @{-n}'
|
|
|
|
. ./test-lib.sh
|
|
|
|
test_expect_success 'branch -d @{-1}' '
|
|
test_commit A &&
|
|
git checkout -b junk &&
|
|
git checkout - &&
|
|
test "$(git symbolic-ref HEAD)" = refs/heads/master &&
|
|
git branch -d @{-1} &&
|
|
test_must_fail git rev-parse --verify refs/heads/junk
|
|
'
|
|
|
|
test_expect_success 'branch -d @{-12} when there is not enough switches yet' '
|
|
git reflog expire --expire=now &&
|
|
git checkout -b junk2 &&
|
|
git checkout - &&
|
|
test "$(git symbolic-ref HEAD)" = refs/heads/master &&
|
|
test_must_fail git branch -d @{-12} &&
|
|
git rev-parse --verify refs/heads/master
|
|
'
|
|
|
|
test_done
|
|
|