관리-도구
편집 파일: branchmap.pyc
� Hq�Qc @ s{ d d l m Z m Z m Z m Z d d l Z d d l Z d d l Z d � Z d � Z d � Z d e f d � � YZ d S( i����( t bint hext nullidt nullrevNc C s) d } | j r% d | | j f } n | S( s7 name of a branchcache file for a given repo or repoviews cache/branchheadss %s-%s( t filtername( t repot filename( ( s9 /usr/lib64/python2.7/site-packages/mercurial/branchmap.pyt _filename s c C s y8 | j t | � � } | j � j d � } | j � Wn t t f k rR d SXy4| j d � j d d � } | d \ } } t | � t | � } } d } t | � d k r� t | d � } n t d | d | d | � } | j | � s� t d � � n x� | D]} } | sqn | j d d � \ } } t j | j � � } | | k rct d | � � n | j | g � j t | � � qWWn� t k r�� no t k r} | j j rd } | j d k r�| d | j 7} n | d 7} | j j | | � n d } n X| S( Ns i t i t tipnodet tiprevt filteredhashs tip differsi s node %s does not exists invalid branchheads caches (%s)s : %s ( t openerR t readt splitt closet IOErrort OSErrort Nonet popR t intt lent branchcachet validfort ValueErrort encodingt tolocalt stript setdefaultt appendt KeyboardInterruptt Exceptiont uit debugflagR t warn( R t ft linest cachekeyt lastt lrevR t partialt lt nodet labelt instt msg( ( s9 /usr/lib64/python2.7/site-packages/mercurial/branchmap.pyR sH ' c sT | j } | j } | j j | � � g } � d k sF � j | � r� t | � � � d k r� t j j | � } | d k r� t � � q� | j | � } | j � j � � | j j | j } | j � f d � | D� � q� n | j | j d � j d � � | r%� j | | � � j | � n � j | � s@t | � � � | j | j <d S( Nc 3 s$ | ] } | � j k r | Vq d S( N( R ( t .0t r( R( ( s9 /usr/lib64/python2.7/site-packages/mercurial/branchmap.pys <genexpr>M s t starti ( t changelogR t _branchcachest getR R R t repoviewt subsettableR t filteredt branchmapt copyt filteredrevst extendt revsR t updatet writet AssertionError( R t clR R; t subsetnamet subsett extrarevs( ( R( s9 /usr/lib64/python2.7/site-packages/mercurial/branchmap.pyt updatecache= s( # R c B sP e Z d Z d e e d d � Z d � Z d � Z d � Z d � Z d � Z RS( s1 A dict like object that hold branches heads cachec C s5 t t | � j | � | | _ | | _ | | _ d S( N( t superR t __init__R R R ( t selft entriesR R R ( ( s9 /usr/lib64/python2.7/site-packages/mercurial/branchmap.pyRE X s c s� | j } | j s d Sd } t � f d � | j D� � } | r~ t j � } x | D] } | j d | � qT W| j � } n | S( sB build hash of revision filtered in the current cache Tracking tipnode and tiprev is not enough to ensure validity of the cache as they do not help to distinct cache that ignored various revision bellow tiprev. To detect such difference, we build a cache of all ignored revisions. c 3 s$ | ] } | � j k r | Vq d S( N( R ( R. R/ ( RF ( s9 /usr/lib64/python2.7/site-packages/mercurial/branchmap.pys <genexpr>l s s %s;N( R1 R9 R t sortedt utilt sha1R<