Files @ 280ac97cb37f
Branch filter:

Location: kallithea/rhodecode/lib/vcs/backends/hg/workdir.py

Mads Kiilerich
don't recurse into '.hg' of removed repositories

Walking through the content of a '.hg' that has been renamed to 'rm__.hg' on
startup can take a lot of time.
from rhodecode.lib.vcs.backends.base import BaseWorkdir
from rhodecode.lib.vcs.exceptions import BranchDoesNotExistError

from rhodecode.lib.vcs.utils.hgcompat import hg_merge


class MercurialWorkdir(BaseWorkdir):

    def get_branch(self):
        return self.repository._repo.dirstate.branch()

    def get_changeset(self):
        return self.repository.get_changeset()

    def checkout_branch(self, branch=None):
        if branch is None:
            branch = self.repository.DEFAULT_BRANCH_NAME
        if branch not in self.repository.branches:
            raise BranchDoesNotExistError

        hg_merge.update(self.repository._repo, branch, False, False, None)