mercurial/localrepo.py
changeset 15455 c6f87bdab2a1
parent 15454 5a7dde5adec8
child 15456 abcaaf51d568
equal deleted inserted replaced
15454:5a7dde5adec8 15455:c6f87bdab2a1
   756         bkname = self.join('bookmarks')
   756         bkname = self.join('bookmarks')
   757         if os.path.exists(bkname):
   757         if os.path.exists(bkname):
   758             util.copyfile(bkname, self.join('journal.bookmarks'))
   758             util.copyfile(bkname, self.join('journal.bookmarks'))
   759         else:
   759         else:
   760             self.opener.write('journal.bookmarks', '')
   760             self.opener.write('journal.bookmarks', '')
       
   761         phasesname = self.sjoin('phaseroots')
       
   762         if os.path.exists(phasesname):
       
   763             util.copyfile(phasesname, self.sjoin('journal.phaseroots'))
       
   764         else:
       
   765             self.sopener.write('journal.phaseroots', '')
   761 
   766 
   762         return (self.sjoin('journal'), self.join('journal.dirstate'),
   767         return (self.sjoin('journal'), self.join('journal.dirstate'),
   763                 self.join('journal.branch'), self.join('journal.desc'),
   768                 self.join('journal.branch'), self.join('journal.desc'),
   764                 self.join('journal.bookmarks'))
   769                 self.join('journal.bookmarks'),
       
   770                 self.sjoin('journal.phaseroots'))
   765 
   771 
   766     def recover(self):
   772     def recover(self):
   767         lock = self.lock()
   773         lock = self.lock()
   768         try:
   774         try:
   769             if os.path.exists(self.sjoin("journal")):
   775             if os.path.exists(self.sjoin("journal")):
   824         parents = self.dirstate.parents()
   830         parents = self.dirstate.parents()
   825         transaction.rollback(self.sopener, self.sjoin('undo'), ui.warn)
   831         transaction.rollback(self.sopener, self.sjoin('undo'), ui.warn)
   826         if os.path.exists(self.join('undo.bookmarks')):
   832         if os.path.exists(self.join('undo.bookmarks')):
   827             util.rename(self.join('undo.bookmarks'),
   833             util.rename(self.join('undo.bookmarks'),
   828                         self.join('bookmarks'))
   834                         self.join('bookmarks'))
       
   835         if os.path.exists(self.sjoin('undo.phaseroots')):
       
   836             util.rename(self.sjoin('undo.phaseroots'),
       
   837                         self.sjoin('phaseroots'))
   829         self.invalidate()
   838         self.invalidate()
   830 
   839 
   831         parentgone = (parents[0] not in self.changelog.nodemap or
   840         parentgone = (parents[0] not in self.changelog.nodemap or
   832                       parents[1] not in self.changelog.nodemap)
   841                       parents[1] not in self.changelog.nodemap)
   833         if parentgone:
   842         if parentgone: