> 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/sv/konfiguration/overleaf-toolkit/git-integration.md).

# Git-integrationen

Git-integrationen finns endast tillgänglig på [ayaka-notes/overleaf](https://github.com/ayaka-notes/overleaf) för närvarande.

{% hint style="info" %}
Den här funktionen utvecklades ursprungligen av [ayaka-notes/overleaf-pro](https://github.com/ayaka-notes/overleaf-pro).
{% endhint %}

{% stepper %}
{% step %}

### Aktivera git-bridge (endast för Toolkit-användare)

Om du använder Toolkit, aktivera `git-bridge` genom att ange följande i din `config/overleaf.rc`:

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

```
GIT_BRIDGE_ENABLED=true
```

{% endcode %}
{% endstep %}

{% step %}

### Lägg till git-bridge-containern (endast för Docker Compose-användare)

För användare som kör en anpassad `docker-compose.yml`, lägg till följande containerkonfiguration i din compose-fil:

{% code title="docker-compose.yml (git-bridge-tjänst)" overflow="wrap" %}

```yaml
git-bridge:
    restart: always
    image: quay.io/sharelatex/git-bridge:4.0.0 # taggen bör matcha `sharelatex`-containerns tagg
    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/" för version 4.1.6 och tidigare
        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 %}

### Uppdatera sharelatex-containerns konfiguration

Du behöver också länka `git-bridge` containern i `sharelatex` containern och definiera följande miljövariabler, var vänlig uppmärksamma `V1_HISTORY_URL`:

<pre class="language-yaml" data-title="docker-compose.yml (sharelatex-tjänst)"><code class="lang-yaml">sharelatex:
    links:
        - git-bridge
    environment:
         GIT_BRIDGE_ENABLED: true
         GIT_BRIDGE_HOST: "git-bridge"
         GIT_BRIDGE_PORT: "8000"
<strong>         # Vi använder v1 nu, om du tidigare satte V1_HISTORY_URL, uppdatera det nu
</strong><strong>         V1_HISTORY_URL: "http://sharelatex:3054"
</strong></code></pre>

{% endstep %}

{% step %}

### Autentisering

När en git-klient autentiseras behöver användare en personlig åtkomsttoken. Användare kan hantera personliga åtkomsttoken via applikationens gränssnitt (se dokumentationen):

<figure><img src="/files/4302a41dde3a43f39a7f4e4835e1ef9d65ba41c6" alt=""><figcaption><p>Personlig åtkomsttoken för Git-integrationen</p></figcaption></figure>
{% endstep %}

{% step %}

### Övervakning och resursöverväganden

Vi rekommenderar att du övervakar dina värdresurser efter att du har aktiverat `git-bridge`. Lastökningen beror på:

* antalet användare som använder funktionen
* vilka typer av projekt som finns i din instans (större projekt är generellt mer resurskrävande)
  {% endstep %}
  {% endstepper %}

### Flytta projekt till S3

Git-integrationen lagrar ett komplett git-repository på disken för varje projekt som klonas av en användare. Om du har begränsat diskutrymme kan du aktivera ett swap-jobb som flyttar repositorier som används mindre till AWS S3. Om ett flyttat repository behövs igen flyttas det tillbaka till disken. Följande miljövariabler styr swap-jobbet:

| Namn                                  | Beskrivning                                                                                                                                                 |
| ------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `GIT_BRIDGE_SWAPSTORE_TYPE`           | Ange detta till "s3" för att aktivera swap-jobbet.                                                                                                          |
| `GIT_BRIDGE_SWAPSTORE_AWS_ACCESS_KEY` | Din AWS-åtkomstnyckel                                                                                                                                       |
| `GIT_BRIDGE_SWAPSTORE_AWS_SECRET`     | Din AWS-hemlighet                                                                                                                                           |
| `GIT_BRIDGE_SWAPSTORE_S3_BUCKET_NAME` | Denna bucket kommer att innehålla de zippade git-repositorierna                                                                                             |
| `GIT_BRIDGE_SWAPSTORE_AWS_REGION`     | Buckens region                                                                                                                                              |
| `GIT_BRIDGE_SWAPJOB_MIN_PROJECTS`     | <p>Hur många projekt som minst ska sparas på disken.<br><br><strong>- Standard:</strong> 50</p>                                                             |
| `GIT_BRIDGE_SWAPJOB_LOW_GIB`          | <p>Låg tröskel för flytt. Swap-jobbet kommer att flytta projekt tills diskutnyttjandet är under detta värde.<br><br><strong>- Standard:</strong> 128 GB</p> |
| `GIT_BRIDGE_SWAPJOB_HIGH_GIB`         | <p>Hög tröskel för flytt. Swap-jobbet börjar flytta när diskutnyttjandet når detta värde.<br><br><strong>- Standard:</strong> 256 GB</p>                    |
| `GIT_BRIDGE_SWAPJOB_INTERVAL_MILLIS`  | <p>Tiden mellan kontroll av diskutnyttjande och körning av swap-jobbet.<br><br><strong>- Standard:</strong> 3600000 ms = 1 timme</p>                        |

### Frågor och svar

<details>

<summary>Om jag delar mitt projekt med någon annan, hur fungerar Git Bridge:s behörighetsmodell?</summary>

Användare med skrivskyddad åtkomst kan bara klona det här projektet; användare med läs- och skrivåtkomst kan klona och pusha projekt. Obs: Användare måste vara inloggade för att gå med i det här projektet.

</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/sv/konfiguration/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.
