diff options
author | Junio C Hamano <gitster@pobox.com> | 2010-01-23 03:08:19 +0300 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2010-01-23 03:08:19 +0300 |
commit | 630724ca79b1a7893a8d9c04367eae857ff1a7b0 (patch) | |
tree | b1eb1c999bf904e164a0f48e1621ee74c981514d /t | |
parent | 78bc024ab075f4d5d9cc0b6540b538f3d93d04cb (diff) | |
parent | 99c419c91554e9f60940228006b7d39d42704da7 (diff) |
Merge branch 'jc/branch-d'
* jc/branch-d:
branch -d: base the "already-merged" safety on the branch it merges with
Diffstat (limited to 't')
-rwxr-xr-x | t/t3200-branch.sh | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/t/t3200-branch.sh b/t/t3200-branch.sh index d59a9b4aef..e0b760513c 100755 --- a/t/t3200-branch.sh +++ b/t/t3200-branch.sh @@ -468,4 +468,30 @@ test_expect_success 'detect misconfigured autosetuprebase (no value)' ' git config --unset branch.autosetuprebase ' +test_expect_success 'attempt to delete a branch without base and unmerged to HEAD' ' + git checkout my9 && + git config --unset branch.my8.merge && + test_must_fail git branch -d my8 +' + +test_expect_success 'attempt to delete a branch merged to its base' ' + # we are on my9 which is the initial commit; traditionally + # we would not have allowed deleting my8 that is not merged + # to my9, but it is set to track master that already has my8 + git config branch.my8.merge refs/heads/master && + git branch -d my8 +' + +test_expect_success 'attempt to delete a branch merged to its base' ' + git checkout master && + echo Third >>A && + git commit -m "Third commit" A && + git branch -t my10 my9 && + git branch -f my10 HEAD^ && + # we are on master which is at the third commit, and my10 + # is behind us, so traditionally we would have allowed deleting + # it; but my10 is set to track my9 that is further behind. + test_must_fail git branch -d my10 +' + test_done |