File: //lib64/python3.9/site-packages/hgext/git/__pycache__/__init__.cpython-39.pyc
a
�+�b�- � @ s d Z ddlmZ ddlZddlmZ ddlmZmZm Z m
Z
mZmZm
Z
mZmZ ddlmZmZmZmZ dZi Ze�e�Zed d
dd� ejZG d
d� de�Zdd� ZG dd� de�Zdd� Zdd� ZdZ G dd� de�Z!d#dd�Z"dd� Z#dd � Z$d!d"� Z%dS )$z�grant Mercurial the ability to operate on Git repositories. (EXPERIMENTAL)
This is currently super experimental. It probably will consume your
firstborn a la Rumpelstiltskin, etc.
� )�absolute_importN)�_) �commands�error�
extensions� localrepo�pycompat� registrar�scmutil�store�util� )�dirstate�gitlog�gitutil�indexs ships-with-hg-core� git� log-index-cache-missF)�defaultc @ sL e Zd Zdd� Zejdd� �Zdd� Zdd� Zd d
� Z dd� Z
ddd�Zd
S )�gitstorec C sf ||�| _ | j | _| j j| _t�| j �| _t�� � t
j�t
j�|dd���| _
dd� | _dd� | _d S )N� ..� .gitc _ s d S �N� )�args�kwargsr r �8/usr/lib64/python3.9/site-packages/hgext/git/__init__.py�<lambda>? � z#gitstore.__init__.<locals>.<lambda>c S s d S r r )�xr r r r @ r )�vfs�opener�base�pathr Z _calcmodeZ
createmoder �
get_pygit2Z
Repository�os�normpath�join�git�_progress_factory�_logfn)�selfr# �vfstyper r r �__init__4 s
�
zgitstore.__init__c C s t �| j| j| j�S r )r Z get_indexr( r* r) �r+ r r r �_dbB s zgitstore._dbc C s\ |dv rt j�| jd�S |dkr0t j�| jd�S |dv rLt j�| jdd|�S td| ��d S )
z�Fake store.join method for git repositories.
For the most part, store.join is used for @storecache
decorators to invalidate caches when various files
change. We'll map the ones we care about, and ignore the rest.
)s
00changelog.is 00manifest.is HEADs locks hgit-bogus-lock)s obsstores
phaserootss
narrowspecs bookmarksr � .hgs Need to pick file for %s.N)r% r# r'