remote prune: warn dangling symrefs

If you prune from the remote "frotz" that deleted the ref your tracking
branch remotes/frotz/HEAD points at, the symbolic ref will become
dangling.  We used to detect this as an error condition and issued a
message every time refs are enumerated.

This stops the error message, but moves the warning to "remote prune".

Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Junio C Hamano
2009-02-08 23:27:10 -08:00
parent 8ea7ad694b
commit f8948e2fbc
4 changed files with 86 additions and 18 deletions

View File

@ -402,4 +402,25 @@ test_expect_success 'migrate a remote from named file in $GIT_DIR/branches' '
test "$(git config remote.origin.fetch)" = "refs/heads/master:refs/heads/origin")
'
test_expect_success 'remote prune to cause a dangling symref' '
git clone one seven &&
(
cd one &&
git checkout side2 &&
git branch -D master
) &&
(
cd seven &&
git remote prune origin
) 2>err &&
grep "has become dangling" err &&
: And the dangling symref will not cause other annoying errors
(
cd seven &&
git branch -a
) 2>err &&
! grep "points nowhere" err
'
test_done