913 |
913 |
914 def destroyed(self): |
914 def destroyed(self): |
915 '''Inform the repository that nodes have been destroyed. |
915 '''Inform the repository that nodes have been destroyed. |
916 Intended for use by strip and rollback, so there's a common |
916 Intended for use by strip and rollback, so there's a common |
917 place for anything that has to be done after destroying history.''' |
917 place for anything that has to be done after destroying history.''' |
918 # Do nothing for now: this is a placeholder that will be used |
|
919 # when we add tag caching. |
|
920 # XXX it might be nice if we could take the list of destroyed |
918 # XXX it might be nice if we could take the list of destroyed |
921 # nodes, but I don't see an easy way for rollback() to do that |
919 # nodes, but I don't see an easy way for rollback() to do that |
922 pass |
920 |
|
921 # Ensure the persistent tag cache is updated. Doing it now |
|
922 # means that the tag cache only has to worry about destroyed |
|
923 # heads immediately after a strip/rollback. That in turn |
|
924 # guarantees that "cachetip == currenttip" (comparing both rev |
|
925 # and node) always means no nodes have been added or destroyed. |
|
926 |
|
927 # XXX this is suboptimal when qrefresh'ing: we strip the current |
|
928 # head, refresh the tag cache, then immediately add a new head. |
|
929 # But I think doing it this way is necessary for the "instant |
|
930 # tag cache retrieval" case to work. |
|
931 tags_.findglobaltags(self.ui, self, {}, {}) |
923 |
932 |
924 def walk(self, match, node=None): |
933 def walk(self, match, node=None): |
925 ''' |
934 ''' |
926 walk recursively through the directory tree or a given |
935 walk recursively through the directory tree or a given |
927 changeset, finding all files matched by the match |
936 changeset, finding all files matched by the match |