def branches(self): if not self.revisions: return {} sortkey = lambda ctx: ctx[0] _branches = [(x[0], x[1][0]) for x in self._parsed_refs.iteritems() if x[1][1] == 'H'] return OrderedDict(sorted(_branches, key=sortkey, reverse=False))
def _get_tags(self): if not self.revisions: return {} sortkey = lambda ctx: ctx[0] _tags = [(x[0], x[1][0]) for x in self._parsed_refs.iteritems() if x[1][1] == 'T'] return OrderedDict(sorted(_tags, key=sortkey, reverse=True))
def _get_tags(self): if not self.revisions: return {} sortkey = lambda ctx: ctx[0] _tags = [('/'.join(ref.split('/')[2:]), head) for ref, head in self._repo.get_refs().items() if ref.startswith('refs/tags/')] return OrderedDict(sorted(_tags, key=sortkey, reverse=True))
def _get_bookmarks(self): if self._empty: return {} sortkey = lambda ctx: ctx[0] # sort by name _bookmarks = [( safe_unicode(n), hex(h), ) for n, h in self._repo._bookmarks.items()] return OrderedDict(sorted(_bookmarks, key=sortkey, reverse=True))
def branches(self): if not self.revisions: return {} refs = self._repo.refs.as_dict() sortkey = lambda ctx: ctx[0] _branches = [ ('/'.join(ref.split('/')[2:]), head) for ref, head in refs.items() if ref.startswith('refs/heads/') and not ref.endswith('/HEAD') ] return OrderedDict(sorted(_branches, key=sortkey, reverse=False))
def _get_branches(self, closed=False): """ Get's branches for this repository Returns only not closed branches by default :param closed: return also closed branches for mercurial """ if self._empty: return {} def _branchtags(localrepo): """ Patched version of mercurial branchtags to not return the closed branches :param localrepo: locarepository instance """ bt = {} bt_closed = {} for bn, heads in localrepo.branchmap().iteritems(): tip = heads[-1] if 'close' in localrepo.changelog.read(tip)[5]: bt_closed[bn] = tip else: bt[bn] = tip if closed: bt.update(bt_closed) return bt sortkey = lambda ctx: ctx[0] # sort by name _branches = [( safe_unicode(n), hex(h), ) for n, h in _branchtags(self._repo).items()] return OrderedDict(sorted(_branches, key=sortkey, reverse=False))