hgext/shelve.py
changeset 38869 ad24b581e4d9
parent 38783 e7aa113b14f7
child 39342 d52fa7ddd1ac
equal deleted inserted replaced
38868:0db50770f388 38869:ad24b581e4d9
    39     exchange,
    39     exchange,
    40     hg,
    40     hg,
    41     lock as lockmod,
    41     lock as lockmod,
    42     mdiff,
    42     mdiff,
    43     merge,
    43     merge,
       
    44     narrowspec,
    44     node as nodemod,
    45     node as nodemod,
    45     patch,
    46     patch,
    46     phases,
    47     phases,
    47     pycompat,
    48     pycompat,
    48     registrar,
    49     registrar,
   312 
   313 
   313 def _aborttransaction(repo):
   314 def _aborttransaction(repo):
   314     '''Abort current transaction for shelve/unshelve, but keep dirstate
   315     '''Abort current transaction for shelve/unshelve, but keep dirstate
   315     '''
   316     '''
   316     tr = repo.currenttransaction()
   317     tr = repo.currenttransaction()
   317     backupname = 'dirstate.shelve'
   318     dirstatebackupname = 'dirstate.shelve'
   318     repo.dirstate.savebackup(tr, backupname)
   319     narrowspecbackupname = 'narrowspec.shelve'
       
   320     repo.dirstate.savebackup(tr, dirstatebackupname)
       
   321     narrowspec.savebackup(repo, narrowspecbackupname)
   319     tr.abort()
   322     tr.abort()
   320     repo.dirstate.restorebackup(None, backupname)
   323     narrowspec.restorebackup(repo, narrowspecbackupname)
       
   324     repo.dirstate.restorebackup(None, dirstatebackupname)
   321 
   325 
   322 def createcmd(ui, repo, pats, opts):
   326 def createcmd(ui, repo, pats, opts):
   323     """subcommand that creates a new shelve"""
   327     """subcommand that creates a new shelve"""
   324     with repo.wlock():
   328     with repo.wlock():
   325         cmdutil.checkunfinished(repo)
   329         cmdutil.checkunfinished(repo)