equal
deleted
inserted
replaced
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 |