コード例 #1
0
ファイル: context.py プロジェクト: luke-chang/gecko-1
 def status(self, ignored=False, clean=False):
     """Explicit status query
     Unless this method is used to query the working copy status, the
     _status property will implicitly read the status using its default
     arguments."""
     stat = self._parsestatus(self._repo.status(change=strtobytes(self),
                                                ignored=ignored,
                                                clean=clean))
     self._unknown = self._ignored = self._clean = None
     if ignored:
         self._ignored = stat[5]
     if clean:
         self._clean = stat[6]
     self._status = stat[:4]
     return stat
コード例 #2
0
 def status(self, ignored=False, clean=False):
     """Explicit status query
     Unless this method is used to query the working copy status, the
     _status property will implicitly read the status using its default
     arguments."""
     stat = self._parsestatus(
         self._repo.status(change=strtobytes(self),
                           ignored=ignored,
                           clean=clean))
     self._unknown = self._ignored = self._clean = None
     if ignored:
         self._ignored = stat[5]
     if clean:
         self._clean = stat[6]
     self._status = stat[:4]
     return stat
コード例 #3
0
    def __init__(self, repo, changeid=b('')):
        """changeid is a revision number, node, or tag"""
        if changeid == b(''):
            changeid = b('.')
        self._repo = repo
        if isinstance(changeid, hglib.client.revision):
            cset = changeid
        elif changeid == -1:
            cset = _nullcset
        else:
            if isinstance(changeid, integertypes):
                changeid = b('rev(') + strtobytes(changeid) + b(')')

            notfound = False
            try:
                cset = self._repo.log(changeid)
                # hg bbf4f3dfd700 gave a null result for tip+1
                if (cset and cset[0][1] == _nullcset[1]
                        and cset[0][0] != _nullcset[0]):
                    notfound = True
            except CommandError:
                notfound = True

            if notfound or not len(cset):
                raise ValueError('changeid %r not found in repo' % changeid)
            if len(cset) > 1:
                raise ValueError('changeid must yield a single changeset')
            cset = cset[0]

        self._rev, self._node, self._tags = cset[:3]
        self._branch, self._author, self._description, self._date = cset[3:]

        self._rev = int(self._rev)

        self._tags = self._tags.split()
        try:
            self._tags.remove(b('tip'))
        except ValueError:
            pass

        self._ignored = None
        self._clean = None
コード例 #4
0
ファイル: context.py プロジェクト: luke-chang/gecko-1
    def __init__(self, repo, changeid=b('')):
        """changeid is a revision number, node, or tag"""
        if changeid == b(''):
            changeid = b('.')
        self._repo = repo
        if isinstance(changeid, hglib.client.revision):
            cset = changeid
        elif changeid == -1:
            cset = _nullcset
        else:
            if isinstance(changeid, integertypes):
                changeid = b('rev(') + strtobytes(changeid) + b(')')

            notfound = False
            try:
                cset = self._repo.log(changeid)
                # hg bbf4f3dfd700 gave a null result for tip+1
                if (cset and cset[0][1] == _nullcset[1]
                    and cset[0][0] != _nullcset[0]):
                    notfound = True
            except CommandError:
                notfound = True

            if notfound or not len(cset):
                raise ValueError('changeid %r not found in repo' % changeid)
            if len(cset) > 1:
                raise ValueError('changeid must yield a single changeset')
            cset = cset[0]

        self._rev, self._node, self._tags = cset[:3]
        self._branch, self._author, self._description, self._date = cset[3:]

        self._rev = int(self._rev)

        self._tags = self._tags.split()
        try:
            self._tags.remove(b('tip'))
        except ValueError:
            pass

        self._ignored = None
        self._clean = None
コード例 #5
0
    def disabled_largefiles(self):
        # we don't run reposetup after a session has started, so this
        # test is broken
        import os
        f = open('.hg/hgrc', 'a')
        f.write('[extensions]\nlargefiles=\n')
        f.close()
        self.append('b', 'a')
        try:
            self.client.rawcommand([b('add'), b('b'), b('--large')])
        except error.CommandError:
            return

        rev2, node2 = self.client.commit(b('third'))
        # Go back to 0
        self.client.rawcommand(
            [b('update'), strtobytes(self.rev0)],
            # Keep the 'changed' version
            prompt=lambda s, d: 'c\n')
        u, m, r, ur = self.client.update(rev2, clean=True)
        self.assertEquals(u, 2)
        self.assertEquals(m, 0)
        self.assertEquals(r, 0)
        self.assertEquals(ur, 0)
コード例 #6
0
 def phase(self):
     """return the phase of the changeset (public, draft or secret)"""
     return self._repo.phase(strtobytes(self._rev))[0][1]
コード例 #7
0
 def _parents(self):
     """return contexts for each parent changeset"""
     par = self._repo.parents(rev=strtobytes(self))
     if not par:
         return [changectx(self._repo, -1)]
     return [changectx(self._repo, int(cset.rev)) for cset in par]
コード例 #8
0
 def _manifest(self):
     d = {}
     for node, p, e, s, path in self._repo.manifest(rev=strtobytes(self)):
         d[path] = node
     return d
コード例 #9
0
 def _status(self):
     return self._parsestatus(
         self._repo.status(change=strtobytes(self)))[:4]
コード例 #10
0
ファイル: context.py プロジェクト: luke-chang/gecko-1
 def _status(self):
     return self._parsestatus(self._repo.status(change=strtobytes(self)))[:4]
コード例 #11
0
ファイル: context.py プロジェクト: luke-chang/gecko-1
 def phase(self):
     """return the phase of the changeset (public, draft or secret)"""
     return self._repo.phase(strtobytes(self._rev))[0][1]
コード例 #12
0
ファイル: context.py プロジェクト: luke-chang/gecko-1
 def _parents(self):
     """return contexts for each parent changeset"""
     par = self._repo.parents(rev=strtobytes(self))
     if not par:
         return [changectx(self._repo, -1)]
     return [changectx(self._repo, int(cset.rev)) for cset in par]
コード例 #13
0
ファイル: context.py プロジェクト: luke-chang/gecko-1
 def _manifest(self):
     d = {}
     for node, p, e, s, path in self._repo.manifest(rev=strtobytes(self)):
         d[path] = node
     return d