mercurial/upgrade.py
changeset 41089 a59a74721c76
parent 41088 5608b5a6c323
child 42045 d7e751ec679e
equal deleted inserted replaced
41088:5608b5a6c323 41089:a59a74721c76
   740     # location. This is simpler.
   740     # location. This is simpler.
   741     backupvfs.unlink('store/lock')
   741     backupvfs.unlink('store/lock')
   742 
   742 
   743     return backuppath
   743     return backuppath
   744 
   744 
   745 def upgraderepo(ui, repo, run=False, optimize=None):
   745 def upgraderepo(ui, repo, run=False, optimize=None, backup=True):
   746     """Upgrade a repository in place."""
   746     """Upgrade a repository in place."""
   747     if optimize is None:
   747     if optimize is None:
   748         optimize = []
   748         optimize = []
   749     optimize = set(legacy_opts_map.get(o, o) for o in optimize)
   749     optimize = set(legacy_opts_map.get(o, o) for o in optimize)
   750     repo = repo.unfiltered()
   750     repo = repo.unfiltered()
   897             dstrepo = hg.repository(repoui, path=tmppath, create=True)
   897             dstrepo = hg.repository(repoui, path=tmppath, create=True)
   898 
   898 
   899             with dstrepo.wlock(), dstrepo.lock():
   899             with dstrepo.wlock(), dstrepo.lock():
   900                 backuppath = _upgraderepo(ui, repo, dstrepo, newreqs,
   900                 backuppath = _upgraderepo(ui, repo, dstrepo, newreqs,
   901                                           upgradeactions)
   901                                           upgradeactions)
       
   902             if not (backup or backuppath is None):
       
   903                 ui.write(_('removing old repository content%s\n') % backuppath)
       
   904                 repo.vfs.rmtree(backuppath, forcibly=True)
       
   905                 backuppath = None
   902 
   906 
   903         finally:
   907         finally:
   904             ui.write(_('removing temporary repository %s\n') % tmppath)
   908             ui.write(_('removing temporary repository %s\n') % tmppath)
   905             repo.vfs.rmtree(tmppath, forcibly=True)
   909             repo.vfs.rmtree(tmppath, forcibly=True)
   906 
   910