> For the complete documentation index, see [llms.txt](https://overleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://overleaf-pro.ayaka.space/on-premises/pl/konfiguracja/overleaf-toolkit/git-integration.md).

# integracji z Gitem

Integracja z Gitem jest obecnie dostępna tylko w [ayaka-notes/overleaf](https://github.com/ayaka-notes/overleaf) obecnie.

{% hint style="info" %}
Ta funkcja została początkowo opracowana przez [ayaka-notes/overleaf-pro](https://github.com/ayaka-notes/overleaf-pro).
{% endhint %}

{% stepper %}
{% step %}

### Włącz git-bridge (tylko dla użytkowników Toolkit)

Jeśli korzystasz z Toolkit, włącz `git-bridge` ustawiając poniższe w swoim `config/overleaf.rc`:

{% code title="config/overleaf.rc" %}

```
GIT_BRIDGE_ENABLED=true
```

{% endcode %}
{% endstep %}

{% step %}

### Dodaj kontener git-bridge (tylko dla użytkowników Docker Compose)

Dla użytkowników korzystających z niestandardowego `docker-compose.yml`, dodaj do pliku compose następującą konfigurację kontenera:

{% code title="docker-compose.yml (usługa git-bridge)" overflow="wrap" %}

```yaml
git-bridge:
    restart: always
    image: quay.io/sharelatex/git-bridge:4.0.0 # tag powinien pasować do tagu kontenera `sharelatex`
    volumes:
        - ~/git_bridge_data:/data/git-bridge
    container_name: git-bridge
    expose:
        - "8000"
    environment:
        GIT_BRIDGE_API_BASE_URL: "http://sharelatex:3000/api/v0/" 
        # "http://sharelatex/api/v0/" dla wersji 4.1.6 i wcześniejszych
        GIT_BRIDGE_OAUTH2_SERVER: "http://sharelatex"
        GIT_BRIDGE_POSTBACK_BASE_URL: "http://git-bridge:8000"
        GIT_BRIDGE_ROOT_DIR: "/data/git-bridge"
    user: root
    command: ["/server-pro-start.sh"]
```

{% endcode %}
{% endstep %}

{% step %}

### Zaktualizuj konfigurację kontenera sharelatex

Będziesz także musiał połączyć `git-bridge` kontener w `sharelatex` kontenerze i zdefiniować następujące zmienne środowiskowe, proszę zwrócić uwagę na `V1_HISTORY_URL`:

<pre class="language-yaml" data-title="docker-compose.yml (usługa sharelatex)"><code class="lang-yaml">sharelatex:
    links:
        - git-bridge
    environment:
         GIT_BRIDGE_ENABLED: true
         GIT_BRIDGE_HOST: "git-bridge"
         GIT_BRIDGE_PORT: "8000"
<strong>         # Używamy teraz v1; jeśli wcześniej ustawiałeś V1_HISTORY_URL, zaktualizuj to teraz
</strong><strong>         V1_HISTORY_URL: "http://sharelatex:3054"
</strong></code></pre>

{% endstep %}

{% step %}

### Uwierzytelnianie

Podczas uwierzytelniania klienta git użytkownicy potrzebują osobistego tokenu dostępu. Użytkownicy mogą zarządzać osobistymi tokenami dostępu w interfejsie aplikacji (zobacz dokumentację):

<figure><img src="/files/620e6198701a08dad64faf096d2cf6167ad52255" alt=""><figcaption><p>Osobisty token dostępu do integracji Git</p></figcaption></figure>
{% endstep %}

{% step %}

### Monitorowanie i kwestie zasobów

Zalecamy monitorować zasoby hosta po włączeniu `git-bridge`. Wzrost obciążenia będzie zależeć od:

* liczby użytkowników korzystających z tej funkcji
* typów projektów hostowanych w twojej instancji (większe projekty są zazwyczaj bardziej zasobożerne)
  {% endstep %}
  {% endstepper %}

### Przenoszenie projektów do S3

Integracja z Gitem przechowuje na dysku pełne repozytorium git dla każdego projektu, który zostanie sklonowany przez użytkownika. Jeśli masz ograniczoną ilość miejsca na dysku, możesz włączyć zadanie wymiany, które przeniesie rzadziej używane repozytoria do AWS S3. Jeśli przeniesione repozytorium będzie ponownie potrzebne, zostanie przeniesione z powrotem na dysk. Następujące zmienne środowiskowe sterują zadaniem wymiany:

| Nazwa                                 | Opis                                                                                                                                                                             |
| ------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `GIT_BRIDGE_SWAPSTORE_TYPE`           | Ustaw to na "s3", aby aktywować zadanie wymiany.                                                                                                                                 |
| `GIT_BRIDGE_SWAPSTORE_AWS_ACCESS_KEY` | Twój klucz dostępu AWS                                                                                                                                                           |
| `GIT_BRIDGE_SWAPSTORE_AWS_SECRET`     | Twój sekret AWS                                                                                                                                                                  |
| `GIT_BRIDGE_SWAPSTORE_S3_BUCKET_NAME` | Ten bucket będzie zawierał spakowane repozytoria git                                                                                                                             |
| `GIT_BRIDGE_SWAPSTORE_AWS_REGION`     | Region bucketa                                                                                                                                                                   |
| `GIT_BRIDGE_SWAPJOB_MIN_PROJECTS`     | <p>Minimalna liczba projektów, które należy przechowywać na dysku.<br><br><strong>- Domyślnie:</strong> 50</p>                                                                   |
| `GIT_BRIDGE_SWAPJOB_LOW_GIB`          | <p>Dolny próg dla przenoszenia. Zadanie wymiany będzie przenosić projekty, dopóki użycie dysku nie spadnie poniżej tej wartości.<br><br><strong>- Domyślnie:</strong> 128 GB</p> |
| `GIT_BRIDGE_SWAPJOB_HIGH_GIB`         | <p>Górny próg dla przenoszenia. Zadanie wymiany rozpocznie przenoszenie, gdy użycie dysku osiągnie tę wartość.<br><br><strong>- Domyślnie:</strong> 256 GB</p>                   |
| `GIT_BRIDGE_SWAPJOB_INTERVAL_MILLIS`  | <p>Czas między sprawdzaniem użycia dysku a uruchomieniem zadania wymiany.<br><br><strong>- Domyślnie:</strong> 3600000 ms = 1 godzina</p>                                        |

### Pytania i odpowiedzi

<details>

<summary>Jeśli udostępnię mój projekt komuś innemu, jak działa model uprawnień Git Bridge?</summary>

Użytkownicy z dostępem tylko do odczytu mogą jedynie sklonować ten projekt; użytkownicy z dostępem do odczytu i zapisu mogą klonować projekty i wypychać zmiany. Uwaga: użytkownicy muszą być zalogowani, aby dołączyć do tego projektu.

</details>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://overleaf-pro.ayaka.space/on-premises/pl/konfiguracja/overleaf-toolkit/git-integration.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
