> For the complete documentation index, see [llms.txt](https://ayakaleaf-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://ayakaleaf-pro.ayaka.space/on-premises/es/configuracion/overleaf-toolkit/git-integration.md).

# integración con Git

La integración de Git solo está disponible en [ayaka-notes/overleaf](https://github.com/ayaka-notes/overleaf) actualmente.

{% hint style="info" %}
Esta funcionalidad fue desarrollada inicialmente por [ayaka-notes/overleaf-pro](https://github.com/ayaka-notes/overleaf-pro).
{% endhint %}

{% stepper %}
{% step %}

### Habilitar git-bridge (solo para usuarios de Toolkit)

Si estás usando Toolkit, habilita `git-bridge` configurándolo de la siguiente manera en tu `config/overleaf.rc`:

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

```
GIT_BRIDGE_ENABLED=true
```

{% endcode %}
{% endstep %}

{% step %}

### Añade el contenedor git-bridge (solo para usuarios de Docker Compose)

Para usuarios que ejecutan un `docker-compose.yml`, añade la siguiente configuración del contenedor a tu archivo compose:

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

```yaml
git-bridge:
    restart: always
    image: quay.io/sharelatex/git-bridge:4.0.0 # la etiqueta debe coincidir con la etiqueta del contenedor `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/" para la versión 4.1.6 y anteriores
        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 %}

### Actualiza la configuración del contenedor sharelatex

También necesitarás vincular el `git-bridge` contenedor en el `sharelatex` contenedor y definir las siguientes variables de entorno; presta atención a `V1_HISTORY_URL`:

<pre class="language-yaml" data-title="docker-compose.yml (servicio sharelatex)"><code class="lang-yaml">sharelatex:
    links:
        - git-bridge
    environment:
         GIT_BRIDGE_ENABLED: true
         GIT_BRIDGE_HOST: "git-bridge"
         GIT_BRIDGE_PORT: "8000"
<strong>         # Ahora usamos v1; si solías configurar V1_HISTORY_URL, actualízalo ahora
</strong><strong>         V1_HISTORY_URL: "http://sharelatex:3054"
</strong></code></pre>

{% endstep %}

{% step %}

### Autenticación

Al autenticar un cliente Git, los usuarios necesitan un token de acceso personal. Los usuarios pueden gestionar los tokens de acceso personal a través de la interfaz de la aplicación (consulta la documentación):

<figure><img src="/files/8b109f75cce667ae20b09c6bd20c08217735d800" alt=""><figcaption><p>Token de acceso personal de la integración de Git</p></figcaption></figure>
{% endstep %}

{% step %}

### Supervisión y consideraciones sobre recursos

Te recomendamos supervisar los recursos de tu host después de habilitar la `git-bridge`. El aumento de carga dependerá de:

* el número de usuarios que acceden a la función
* los tipos de proyectos alojados en tu instancia (los proyectos más grandes suelen requerir más recursos)
  {% endstep %}
  {% endstepper %}

### Mover proyectos a S3

La integración de Git almacena en disco un repositorio Git completo para cada proyecto que un usuario clona. Si tienes poco espacio en disco, puedes activar un trabajo de intercambio que moverá a AWS S3 los repositorios que se usen menos. Si se necesita de nuevo un repositorio intercambiado, se moverá otra vez al disco. Las siguientes variables de entorno controlan el trabajo de intercambio:

| Nombre                                | Descripción                                                                                                                                                                                   |
| ------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `GIT_BRIDGE_SWAPSTORE_TYPE`           | Establécelo en "s3" para activar el trabajo de intercambio.                                                                                                                                   |
| `GIT_BRIDGE_SWAPSTORE_AWS_ACCESS_KEY` | Tu clave de acceso de AWS                                                                                                                                                                     |
| `GIT_BRIDGE_SWAPSTORE_AWS_SECRET`     | Tu secreto de AWS                                                                                                                                                                             |
| `GIT_BRIDGE_SWAPSTORE_S3_BUCKET_NAME` | Este bucket contendrá los repositorios Git comprimidos en zip                                                                                                                                 |
| `GIT_BRIDGE_SWAPSTORE_AWS_REGION`     | La región del bucket                                                                                                                                                                          |
| `GIT_BRIDGE_SWAPJOB_MIN_PROJECTS`     | <p>Cuántos proyectos mantener en disco, como mínimo.<br><br><strong>- Predeterminado:</strong> 50</p>                                                                                         |
| `GIT_BRIDGE_SWAPJOB_LOW_GIB`          | <p>Umbral bajo para el intercambio. El trabajo de intercambio moverá proyectos hasta que el uso del disco esté por debajo de este valor.<br><br><strong>- Predeterminado:</strong> 128 GB</p> |
| `GIT_BRIDGE_SWAPJOB_HIGH_GIB`         | <p>Umbral alto para el intercambio. El trabajo de intercambio comenzará a mover proyectos cuando el uso del disco alcance este valor.<br><br><strong>- Predeterminado:</strong> 256 GB</p>    |
| `GIT_BRIDGE_SWAPJOB_INTERVAL_MILLIS`  | <p>El tiempo entre comprobar el uso del disco y ejecutar el trabajo de intercambio.<br><br><strong>- Predeterminado:</strong> 3600000 ms = 1 hora</p>                                         |

### Preguntas y respuestas

<details>

<summary>Si comparto mi proyecto con otra persona, ¿cómo funciona el modelo de permisos de Git Bridge?</summary>

Los usuarios con acceso de solo lectura solo pueden clonar este proyecto; los usuarios con acceso de lectura y escritura pueden clonar y hacer push a los proyectos. Nota: los usuarios deben haber iniciado sesión para unirse a este proyecto.

</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://ayakaleaf-pro.ayaka.space/on-premises/es/configuracion/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.
