diff -r b36318e6d2ef -r fe9c4d614600 mercurial/localrepo.py --- a/mercurial/localrepo.py Tue Mar 28 06:38:09 2017 +0200 +++ b/mercurial/localrepo.py Tue Mar 28 10:14:55 2017 +0200 @@ -1028,7 +1028,8 @@ newfnodes = tagsmod.fnoderevs(repo.ui, repo, newheads) # notes: we compare lists here. # As we do it only once buiding set would not be cheaper - if oldfnodes != newfnodes: + changes = tagsmod.difftags(repo.ui, repo, oldfnodes, newfnodes) + if changes: tr2.hookargs['tag_moved'] = '1' def validate(tr2): """will run pre-closing hooks"""