mercurial/hg.py
changeset 225 1651a3e61925
parent 224 ccbcc4d76f81
child 227 f57519cddd3d
equal deleted inserted replaced
224:ccbcc4d76f81 225:1651a3e61925
   344     def transaction(self):
   344     def transaction(self):
   345         return transaction(self.opener, self.join("journal"),
   345         return transaction(self.opener, self.join("journal"),
   346                            self.join("undo"))
   346                            self.join("undo"))
   347 
   347 
   348     def recover(self):
   348     def recover(self):
   349         self.lock()
   349         lock = self.lock()
   350         if os.path.exists(self.join("recover")):
   350         if os.path.exists(self.join("recover")):
   351             self.ui.status("attempting to rollback interrupted transaction\n")
   351             self.ui.status("attempting to rollback interrupted transaction\n")
   352             return rollback(self.opener, self.join("recover"))
   352             return rollback(self.opener, self.join("recover"))
   353         else:
   353         else:
   354             self.ui.warn("no interrupted transaction available\n")
   354             self.ui.warn("no interrupted transaction available\n")
   355 
   355 
   356     def undo(self):
   356     def undo(self):
   357         self.lock()
   357         lock = self.lock()
   358         if os.path.exists(self.join("undo")):
   358         if os.path.exists(self.join("undo")):
   359             f = self.changelog.read(self.changelog.tip())[3]
   359             f = self.changelog.read(self.changelog.tip())[3]
   360             self.ui.status("attempting to rollback last transaction\n")
   360             self.ui.status("attempting to rollback last transaction\n")
   361             rollback(self.opener, self.join("undo"))
   361             rollback(self.opener, self.join("undo"))
   362             self.manifest = manifest(self.opener)
   362             self.manifest = manifest(self.opener)
   426 
   426 
   427         if not commit and not remove:
   427         if not commit and not remove:
   428             self.ui.status("nothing changed\n")
   428             self.ui.status("nothing changed\n")
   429             return
   429             return
   430 
   430 
       
   431         lock = self.lock()
   431         tr = self.transaction()
   432         tr = self.transaction()
   432 
   433 
   433         # check in files
   434         # check in files
   434         new = {}
   435         new = {}
   435         linkrev = self.changelog.count()
   436         linkrev = self.changelog.count()
   805         def revmap(x):
   806         def revmap(x):
   806             return self.changelog.rev(x)
   807             return self.changelog.rev(x)
   807 
   808 
   808         if not generator: return
   809         if not generator: return
   809         changesets = files = revisions = 0
   810         changesets = files = revisions = 0
   810         self.lock()
   811 
   811         source = genread(generator)
   812         source = genread(generator)
       
   813         lock = self.lock()
   812         tr = self.transaction()
   814         tr = self.transaction()
   813 
   815 
   814         # pull off the changeset group
   816         # pull off the changeset group
   815         self.ui.status("adding changesets\n")
   817         self.ui.status("adding changesets\n")
   816         co = self.changelog.tip()
   818         co = self.changelog.tip()