a
    Ad                     @  sL   d dl mZ d dlZd dlZd dlZG dd dejZG dd dejZdS )    )annotationsNc                   @  s8   e Zd ZdZdd ZdddddZd	d
dddZdS )Gitz;
    Git subclassed to never use persistent processes.
    c              
   O  s&   t d| d| d| d| d	d S )Nz$Refusing to use persistent process: z ( ))NotImplementedError)self	attr_namecmd_nameargskwargs r   >/var/www/html/stable-diffusion-webui/modules/gitpython_hack.py_get_persistent_cmd   s    zGit._get_persistent_cmdzstr | bytesztuple[str, str, int])refreturnc                 C  s,   t j| jddg| || jdd}| |S )Ncat-filez--batch-check   inputcwdtimeout)
subprocesscheck_outputGIT_PYTHON_GIT_EXECUTABLE_prepare_ref_working_dir_parse_object_header)r   r   retr   r   r   get_object_header   s    
zGit.get_object_headerstrz0tuple[str, str, int, 'Git.CatFileContentStream']c                 C  sT   t j| jddg| || jdd}t|}| | \}}}|||| 	||fS )Nr   z--batch   r   )
r   r   r   r   r   ioBytesIOr   readlineZCatFileContentStream)r   r   r   biohexshatypenamesizer   r   r   stream_object_data   s    

zGit.stream_object_dataN)__name__
__module____qualname____doc__r   r   r(   r   r   r   r   r   	   s   	r   c                   @  s   e Zd ZeZdS )RepoN)r)   r*   r+   r   ZGitCommandWrapperTyper   r   r   r   r-   )   s   r-   )
__future__r   r!   r   gitr   r-   r   r   r   r   <module>   s
    