diff -r 5125f0a9728b -r 09f1c17e24dd mercurial/commands.py --- a/mercurial/commands.py Fri Dec 21 17:10:07 2018 +0100 +++ b/mercurial/commands.py Thu Jan 31 18:17:02 2019 +0530 @@ -5830,6 +5830,10 @@ expectedtype = 'global' for n in names: + if repo.tagtype(n) == 'global': + alltags = tagsmod.findglobaltags(ui, repo) + if alltags[n][0] == nullid: + raise error.Abort(_("tag '%s' is already removed") % n) if not repo.tagtype(n): raise error.Abort(_("tag '%s' does not exist") % n) if repo.tagtype(n) != expectedtype: