hooks--update: decline deleting tags or branches by default, add config options
authorGerrit Pape <pape@smarden.org>
Thu, 8 Nov 2007 09:47:39 +0000 (09:47 +0000)
committerJunio C Hamano <gitster@pobox.com>
Thu, 8 Nov 2007 22:17:32 +0000 (14:17 -0800)
commitad7638b2edbad05d5f5581ec76d49094d8ba9237
treecf8076b250cf9fb6357691b2e34116f0b54e92bf
parent1756fed9ee849c687f92cac30d86d2955d8c94c4
hooks--update: decline deleting tags or branches by default, add config options

Decline deleting tags or branches through git push <remote> :<ref> by
default, support config options hooks.allowdeletetag, hooks.allowdeletebranch
to override this per repository.

Before this patch the update hook interpreted deleting a tag, no matter if
annotated or not, through git push <remote> :<tag> as unannotated tag, and
declined it by default, but with an unappropriate error message:

 $ git push origin :atag
 deleting 'refs/tags/atag'
 *** The un-annotated tag, atag, is not allowed in this repository
 *** Use 'git tag [ -a | -s ]' for tags you want to propagate.
 ng refs/tags/atag hook declined
 error: hooks/update exited with error code 1
 error: hook declined to update refs/tags/atag
 error: failed to push to 'monolith:/git/qm/test-repo'

Signed-off-by: Gerrit Pape <pape@smarden.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
templates/hooks--update