+
    LV-j“  ã                   óD   € ^ RI t ^ RIt^ RIHt ^RIHt  ! R R]4      tR# )é    N)ÚAbstractFileSystem)Ú
MemoryFilec                   óª   a a€ ] tR t^
t oRtRtRtRV 3R llt]V 3R l4       t	R t
]R 4       t]RR l4       tRR	 ltRR
 ltRR ltRR ltRtVtV ;t# )ÚGitFileSystemzTBrowse the files of a local git repo at any hash/tag/branch

(experimental backend)
Ú Tc                óÎ   <€ \         SV `  ! R/ VB  \        P                  ! T;'       g     T;'       g    \        P
                  ! 4       4      V n        T;'       g    RV n        R# )aÅ  

Parameters
----------
path: str (optional)
    Local location of the repo (uses current directory if not given).
    May be deprecated in favour of ``fo``. When used with a higher
    level function such as fsspec.open(), may be of the form
    "git://[path-to-repo[:]][ref@]path/to/file" (but the actual
    file path should not contain "@" or ":").
fo: str (optional)
    Same as ``path``, but passed as part of a chained URL. This one
    takes precedence if both are given.
ref: str (optional)
    Reference to work with, could be a hash, tag or branch name. Defaults
    to current working tree. Note that ``ls`` and ``open`` also take hash,
    so this becomes the default for those operations
kwargs
ÚmasterN© )ÚsuperÚ__init__Úpygit2Ú
RepositoryÚosÚgetcwdÚrepoÚref)ÚselfÚpathÚfor   ÚkwargsÚ	__class__s   &&&&,€Úk/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/fsspec/implementations/git.pyr   ÚGitFileSystem.__init__   sJ   ø€ ô( 	‰ÒÑ"˜6Ò"Ü×%Ò% b×&?Ð&?¨D×&?Ð&?´B·I²I³KÓ@ˆŒ	Ø—?�?˜(ˆŽó    c                óâ   <€ \         SV `  V4      P                  R 4      pRV9   d   VP                  R^4      ^,          pRV9   d   VP                  R^4      ^,          pVP                  R 4      # )Ú/Ú:Ú@)r   Ú_strip_protocolÚlstripÚsplit)Úclsr   r   s   &&€r   r   ÚGitFileSystem._strip_protocol+   sd   ø€ ä‰wÑ& tÓ,×3Ñ3°CÓ8ˆØ�$Œ;Ø—:‘:˜c 1Ó% aÕ(ˆDØ�$Œ;Ø—:‘:˜c 1Ó% aÕ(ˆDØ�{‰{˜3ÓÐr   c                ó>  € V P                   P                  T;'       g    V P                  4      w  r2VP                  R 4      pVP                  pV FH  pV'       g   K  \        V\        P                  4      '       g   K/  We9  d   \        V4      hWV,          pKJ  	  V# )r   )	r   Úresolve_refishr   r!   ÚtreeÚ
isinstancer   ÚTreeÚFileNotFoundError)r   r   r   ÚcommÚpartsr&   Úparts   &&&    r   Ú_path_to_objectÚGitFileSystem._path_to_object4   sv   € Ø—I‘I×,Ñ,¨S¯_¨_°D·H±HÓ=‰	ˆØ—
‘
˜3“ˆØ�y‰yˆÛˆDß‰tœ
 4¬¯©×5Ô5ØÔ#Ü+¨DÓ1Ð1Ø•z’ñ	 ð
 ˆr   c                ó¨   € V P                  R 4      p / pRV 9   d   V P                  R^4      w  VR&   p RV 9   d   V P                  R^4      w  VR&   p V# )zgit://r   r   r   r   )Úremoveprefixr!   )r   Úouts   & r   Ú_get_kwargs_from_urlsÚ#GitFileSystem._get_kwargs_from_urls?   s\   € à× Ñ  Ó*ˆØˆØ�$Œ;Ø $§
¡
¨3°Ó 2ÑˆC�‰K˜Ø�$Œ;Ø#Ÿz™z¨#¨qÓ1ÑˆC�‰J˜Øˆ
r   c           
     óx  € \        V \        P                  4      pR V'       d   RMRRV'       d6   RP                  YP                  ;'       g    R.4      P                  R4      MV P                  R\        V P                  4      RV P                  f   RMV P                  R	 R
V'       d   ^ /# V P                  /# )ÚtypeÚ	directoryÚfileÚnamer   r   ÚhexÚmodeÚ100644ÚoÚsize)
r'   r   r(   Újoinr8   r    ÚstrÚidÚfilemoder=   )Úobjr   Úis_dirs   && r   Ú_object_to_infoÚGitFileSystem._object_to_infoI   s–   € ô ˜C¤§¡Ó-ˆà§6‘K¨vØß@D�—‘˜$§¡§ ¨BÐ/Ó0×7Ñ7¸Ô<È#Ï(É(à”3�s—v‘v“;Ø §¡Ò 4‘H¸S¿\¹\È!Ð<LØŸ�Að
ð 	
ð &)§X¡Xð
ð 	
r   c                ó&  € V P                  V P                  V4      V4      p\        V\        P                  4      '       d   TMV. Uu. uF<  pV'       d   \
        P                  Wa4      M\
        P                  Wa4      R ,          NK>  	  up# u upi )r8   )r-   r   r'   r   r(   r   rD   )r   r   Údetailr   r   r&   rB   s   &&&&,  r   ÚlsÚGitFileSystem.lsW   sŒ   € Ø×#Ñ# D×$8Ñ$8¸Ó$>ÀÓDˆô
 !+¨4´·±× =Ò =™ÀDÀ6ÐIó	
ñ J�÷ ô ×)Ñ)¨#Ô4ä×.Ñ.¨sÓ9¸&ÕAòBñ Jñ	
ð 	
ùò 
s   Á	BÁ5Bc                ón   € V P                  V P                  V4      V4      p\        P                  WA4      # ©N)r-   r   r   rD   )r   r   r   r   r&   s   &&&, r   ÚinfoÚGitFileSystem.info`   s0   € Ø×#Ñ# D×$8Ñ$8¸Ó$>ÀÓDˆÜ×,Ñ,¨TÓ8Ð8r   c                ó4   € V P                  WR 7      R,          # ))r   r9   )rL   )r   r   r   s   &&&r   ÚukeyÚGitFileSystem.ukeyd   s   € Ø�y‰y˜ˆyÓ'¨Õ.Ð.r   c                óx   € T P                  Y;'       g    V P                  4      p\        VP                  R 7      # ))Údata)r-   r   r   rR   )	r   r   r:   Ú
block_sizeÚ
autocommitÚcache_optionsr   r   rB   s	   &&&&&&&, r   Ú_openÚGitFileSystem._openg   s-   € ð ×"Ñ" 4¯¨°·±Ó9ˆÜ˜sŸx™xÔ(Ð(r   )r   r   )NNNrK   )TN)ÚrbNTNN)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__Úroot_markerÚcachabler   Úclassmethodr   r-   Ústaticmethodr2   rD   rH   rL   rO   rV   Ú__static_attributes__Ú__classdictcell__Ú__classcell__)r   Ú__classdict__s   @@r   r   r   
   su   ù‡ € ñð
 €KØ€H÷#ð0 ô ó ð ò	ð ñó ðð ó
ó ð
ô
ô9ô/÷)ô )r   r   )r   r   Úfsspec.specr   Úmemoryr   r   r
   r   r   Ú<module>rh      s    ðÛ 	ã å *å ôh)Ð&ö h)r   