> ## Documentation Index
> Fetch the complete documentation index at: https://adminroletesting-mintlify-6c837eae.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Implementaciones multi-repositorio

> Combina varios repositorios de Git en un único sitio de Mintlify, con una ruta de URL dedicada al contenido y la navegación de cada repositorio.

<Info>
  Las implementaciones multi-repositorio están disponibles en los [planes Enterprise](https://mintlify.com/pricing?ref=multi-repo).
</Info>

Usa una implementación multi-repositorio cuando un sitio necesite contenido de más de un repositorio de Git. Cuando configuras varios repositorios como fuentes del mismo proyecto de Mintlify, el contenido de cada repositorio tiene su propia ruta de URL.

Por ejemplo, puedes combinar repositorios separados de documentación de producto, referencia de API y guías de SDK en un único sitio:

```text theme={null}
docs.example.com/product
docs.example.com/api
docs.example.com/sdks
```

<div id="how-multi-repository-deployments-work">
  ## Cómo funcionan las implementaciones multi-repositorio
</div>

Cada repositorio en una implementación multi-repositorio tiene su propio:

* Conexión con el proveedor de Git
* Rama
* Directorio de contenido opcional
* Ruta de URL
* `docs.json`

Durante la implementación, Mintlify lee cada repositorio y combina las fuentes configuradas en un único sitio. Cada fuente aparece bajo su ruta de URL configurada.

Un repositorio actúa como la **fuente base** de la implementación. Su `docs.json` es el `docs.json` raíz y controla la configuración a nivel de sitio, incluyendo el tema, los colores, el logotipo, el nombre del sitio, la navegación de nivel superior, las integraciones, el SEO y otros campos de nivel superior. Las demás fuentes aportan únicamente su propia navegación y contenido bajo su ruta de URL configurada. El primer repositorio que configures es la fuente base de manera predeterminada, y puedes [cambiar qué fuente es la base](#change-the-base-source) en cualquier momento.

<Note>
  Las implementaciones multi-repositorio son distintas a una [configuración de monorepo](/es/deploy/monorepo). Usa una configuración de monorepo cuando almacenes todo el contenido en un subdirectorio junto con el código fuente en un único repositorio. Usa implementaciones multi-repositorio cuando almacenes el contenido en repositorios distintos.
</Note>

<div id="requirements">
  ## Requisitos
</div>

* Un plan Enterprise
* Acceso de administrador a tu proyecto de Mintlify
* Un archivo `docs.json` en cada repositorio de origen
* Todas las fuentes de repositorio deben usar el mismo proveedor de Git (todas GitHub o todas GitLab). Añadir una fuente de un proveedor distinto elimina todas las fuentes existentes del otro tipo

<Warning>
  Las rutas de URL deben ser únicas y no pueden superponerse. Por ejemplo, no configures una fuente en `/docs` y otra fuente en `/docs/api`.
</Warning>

<div id="configure-multiple-repositories">
  ## Configurar varios repositorios
</div>

<Steps>
  <Step title="Abrir la configuración de Git">
    Ve a la [configuración de Git](https://app.mintlify.com/settings/deployment/git-settings) en tu panel.

    <Frame>
      <img src="https://mintcdn.com/adminroletesting-mintlify-6c837eae/YdcCUDF5wpfcKN3I/images/deployments/add-repository-light.png?fit=max&auto=format&n=YdcCUDF5wpfcKN3I&q=85&s=719aeb017a14823ebbb22d6f26070c7d" alt="La página de configuración de Git en el panel de Mintlify. El botón Add repository está visible en la parte inferior." className="block dark:hidden" width="1827" height="1031" data-path="images/deployments/add-repository-light.png" />

      <img src="https://mintcdn.com/adminroletesting-mintlify-6c837eae/YdcCUDF5wpfcKN3I/images/deployments/add-repository-dark.png?fit=max&auto=format&n=YdcCUDF5wpfcKN3I&q=85&s=b9adc8aff17ddde8db074f91713fb04a" alt="La página de configuración de Git en el panel de Mintlify. El botón Add repository está visible en la parte inferior." className="hidden dark:block" width="1827" height="1031" data-path="images/deployments/add-repository-dark.png" />
    </Frame>
  </Step>

  <Step title="Añadir otro repositorio">
    Haz clic en **Add repository**.
  </Step>

  <Step title="Configurar la fuente del repositorio">
    Selecciona el repositorio, la rama y los campos específicos del proveedor de Git que se requieran (GitHub o GitLab).

    <Frame>
      <img src="https://mintcdn.com/adminroletesting-mintlify-6c837eae/YdcCUDF5wpfcKN3I/images/deployments/repo-configuration-light.png?fit=max&auto=format&n=YdcCUDF5wpfcKN3I&q=85&s=fd7aa5cd891c7bfe812fdfa95715a15f" alt="El panel de configuración del repositorio en la página de configuración de Git. El repositorio, la rama y los campos específicos de GitHub están visibles." className="block dark:hidden" width="2119" height="1395" data-path="images/deployments/repo-configuration-light.png" />

      <img src="https://mintcdn.com/adminroletesting-mintlify-6c837eae/YdcCUDF5wpfcKN3I/images/deployments/repo-configuration-dark.png?fit=max&auto=format&n=YdcCUDF5wpfcKN3I&q=85&s=2c4df9b43232a62be748bdb13778953c" alt="El panel de configuración del repositorio en la página de configuración de Git. El repositorio, la rama y los campos específicos de GitHub están visibles." className="hidden dark:block" width="2119" height="1395" data-path="images/deployments/repo-configuration-dark.png" />
    </Frame>

    Para fuentes de GitHub, la aplicación de GitHub de Mintlify debe tener acceso al repositorio. Para fuentes de GitLab, proporciona el ID del proyecto y un token de despliegue con el alcance `read_repository`.

    Si el `docs.json` del repositorio se encuentra en un subdirectorio en lugar de en la raíz, habilita **docs.json is in a subdirectory** e introduce la ruta a ese directorio.
  </Step>

  <Step title="Establecer la ruta de URL">
    Introduce una **URL path** para la fuente del repositorio.

    La ruta de URL determina dónde aparece el contenido de ese repositorio en tu sitio de documentación. Por ejemplo, una ruta de URL `api` sirve el contenido bajo `docs.example.com/api`.

    <Note>
      Puedes introducir la ruta con o sin barras iniciales. Mintlify normaliza el valor al guardar.
    </Note>
  </Step>

  <Step title="Guardar los cambios">
    Haz clic en **Save changes**. Mintlify guarda la configuración y pone en cola un despliegue del sitio combinado.
  </Step>
</Steps>

<div id="change-the-base-source">
  ## Cambiar la fuente base
</div>

La fuente base proporciona la configuración a nivel de sitio para tu implementación multi-repositorio. Cambia la fuente base cuando quieras que el `docs.json` de un repositorio distinto controle ajustes como el tema, los colores, el nombre del sitio y la navegación de nivel superior.

<Steps>
  <Step title="Abrir la configuración de Git">
    Ve a la [configuración de Git](https://app.mintlify.com/settings/deployment/git-settings) en tu panel.

    La fuente base actual muestra una insignia **Base** junto al nombre del repositorio.
  </Step>

  <Step title="Establecer una nueva fuente base">
    En el repositorio que quieras usar como base, selecciona **Set as base**.

    Mintlify actualiza la fuente base de inmediato y pone en cola una implementación que usa el `docs.json` del nuevo repositorio base para la configuración a nivel de sitio.
  </Step>
</Steps>

<Warning>
  Cambiar la fuente base reemplaza la configuración a nivel de sitio (como el tema, los colores, el logotipo, el nombre del sitio y la navegación de nivel superior) por los valores del `docs.json` del nuevo repositorio base. Las rutas de URL y el contenido de las demás fuentes no se ven afectados.
</Warning>

<div id="example-repository-layout">
  ## Ejemplo de organización de repositorios
</div>

En este ejemplo, cada fuente tiene su propio repositorio y su propio `docs.json`.

```text theme={null}
acme/product-docs
├── docs.json
├── overview.mdx
└── guides/

acme/api-docs
├── docs.json
├── introduction.mdx
└── reference/

acme/sdk-docs
├── docs.json
├── quickstart.mdx
└── javascript/
```

Configura cada repositorio con una ruta de URL:

| Repositorio         | Ruta de URL | Ruta publicada |
| ------------------- | ----------- | -------------- |
| `acme/product-docs` | `product`   | `/product`     |
| `acme/api-docs`     | `api`       | `/api`         |
| `acme/sdk-docs`     | `sdks`      | `/sdks`        |

<div id="navigation-behavior">
  ## Comportamiento de la navegación
</div>

Mintlify combina la navegación de cada repositorio en una única navegación del sitio. Cada fuente de repositorio se convierte en una sección de producto de nivel superior bajo la ruta de URL configurada.

El nombre de cada sección de producto proviene del campo `name` en el `docs.json` del repositorio correspondiente. Por ejemplo, si el `docs.json` de un repositorio establece `"name": "API Reference"`, su sección de producto aparece como "API Reference" en la navegación combinada.

Mantén la navegación de cada fuente acotada a ese repositorio. Por ejemplo, las páginas en el repositorio de API deben referenciar solo archivos que estén en el repositorio de API, y las páginas en el repositorio de SDK deben referenciar solo archivos que estén en el repositorio de SDK.

Las configuraciones anidadas de `navigation.products` no son compatibles dentro de los repositorios de origen individuales.

<div id="link-between-sources">
  ### Enlazar entre fuentes
</div>

Los enlaces de Markdown relativos no se pueden resolver entre repositorios porque cada fuente solo ve sus propios archivos en el momento de la compilación. Para enlazar desde una fuente a una página de otra fuente, usa una ruta URL relativa a la raíz que incluya la ruta URL de la fuente de destino:

```mdx theme={null}
See the [API reference](/api/reference/authentication) for details.
```

En este ejemplo, `/api` es la ruta URL configurada para la fuente del repositorio de API. El enlace se resuelve a nivel del sitio publicado como `docs.example.com/api/reference/authentication`.

No uses URLs completas con `https://` para enlaces internos entre fuentes: las rutas relativas a la raíz mantienen el correcto funcionamiento de las previsualizaciones y los dominios personalizados.

<div id="reference-navigation-from-another-source">
  ## Referenciar la navegación desde otra fuente
</div>

Usa `sourceRef` para ubicar la navegación de otro repositorio en una posición específica dentro del `docs.json` de la fuente base. Si no usas `sourceRef`, Mintlify agrega cada repositorio como una sección de producto de nivel superior independiente.

<div id="requirements">
  ### Requisitos
</div>

* El repositorio referenciado debe estar configurado como una fuente en la misma implementación multi-repositorio.
* Los valores de `sourceRef` deben usar el formato `owner/repo`. Las rutas de montaje y los nombres de repositorio por sí solos no son compatibles.
* La fuente referenciada debe definir un patrón de navegación similar al de la fuente principal. Por ejemplo, un `sourceRef` dentro de `anchors` requiere que la fuente referenciada defina `navigation.anchors`.
* Las entradas de `sourceRef` no pueden formar un ciclo. Una fuente no puede referenciarse a sí misma, y dos fuentes no pueden referenciarse entre sí.
* `sourceRef` debe aparecer dentro de un arreglo de navegación. No es válido en el nivel superior de `navigation`.

<div id="usage">
  ### Uso
</div>

Agrega una entrada `sourceRef` a un arreglo de navegación en el `docs.json` de la fuente base. El valor debe ser el identificador `owner/repo` del repositorio.

```json theme={null}
{ "sourceRef": "acme/api-docs" }
```

`sourceRef` es compatible dentro de `anchors`, `tabs`, `groups`, `pages`, `products` y los arreglos bajo `navigation.global`.

Por ejemplo, para combinar los anchors de varios repositorios en una sola navegación de anchors:

```json theme={null}
{
  "navigation": {
    "anchors": [
      {
        "anchor": "Guides",
        "pages": ["quickstart"]
      },
      {
        "sourceRef": "acme/api-docs"
      }
    ]
  }
}
```

Si `acme/api-docs` define su propio `navigation.anchors`, Mintlify reemplaza la entrada `sourceRef` con esos anchors y les antepone la ruta de URL de la fuente referenciada.

<div id="removing-a-repository-source">
  ## Eliminar una fuente de repositorio
</div>

Puedes eliminar una fuente de repositorio desde la [página de configuración de Git](https://app.mintlify.com/settings/deployment/git-settings) en tu panel. Cuando solo queda una fuente de repositorio, Mintlify elimina la ruta de URL de la fuente y trata el repositorio restante como la fuente raíz de la implementación.
