mercurial/localrepo.py
changeset 7009 3d54cf97598d
parent 7008 8fee8ff13d37
child 7016 58dcf10eea2b
--- a/mercurial/localrepo.py	Mon Sep 08 13:07:00 2008 +0200
+++ b/mercurial/localrepo.py	Mon Sep 08 14:04:10 2008 +0200
@@ -221,7 +221,13 @@
                 raise util.Abort(_('working copy of .hgtags is changed '
                                    '(please commit .hgtags manually)'))
 
-        self._tag(names, node, message, local, user, date)
+        parents = self[None].parents()
+        parent = None
+        # use tip instead of the parent rev if there's no working copy
+        # (avoid creating a new head)
+        if len(parents) == 1 and parents[0].node() == nullid:
+            parent = self['tip'].node()
+        self._tag(names, node, message, local, user, date, parent=parent)
 
     def tags(self):
         '''return a mapping of tag to node'''