Monorepos

GitBook prend en charge les monorepos. Un monorepo est un dépôt qui contient plus d'un projet logique (par exemple, un client iOS et une application web).

GitBook peut synchroniser plusieurs répertoires du même dépôt avec plusieurs espaces. Lors de l'activation de la synchronisation Git dans un espace, vous pouvez configurer un "Répertoire du projet". Il sera utilisé pour rechercher le .gitbook.yaml fichier pour le répertoire à synchroniser avec cet espace.

Exemple d'une structure de dépôt :

/
  package.json
  packages/
     guide de style/
        .gitbook.yaml
        README.md
        SUMMARY.md
     app/
        README.md
        SUMMARY.md
     api/
        .gitbook.yaml
        README.md
        SUMMARY.md

Dans cet exemple, 3 espaces peuvent être créés sur GitBook et configurés avec différents répertoires racine :

  • packages/guide de style

  • packages/app

  • packages/api

L'option "Répertoire du projet" au niveau de la synchronisation Git diffère de la racine option dans le .gitbook.yaml fichier de configuration. Le premier est utilisé pour rechercher .gitbook.yaml lui-même, puis les deux sont combinés pour rechercher le reste des fichiers dans le répertoire. S'il n'existe aucun .gitbook.yaml dans le "Répertoire du projet", la synchronisation utilisera la configuration par défaut assignée à ce répertoire.

Mise à jour du répertoire du projet

Dans la plupart des cas, nous recommandons l'étape suivante pour mettre à jour le répertoire du projet :

  1. Désactivez la synchronisation Git existante

  2. Déplacez les fichiers du dépôt Git vers le répertoire du projet

  3. Reconfigurez la synchronisation Git avec le nouveau répertoire du projet

Dans certains cas, vous avez peut-être commencé avec un dépôt typique synchronisant avec un seul espace, mais avez ensuite décidé de passer à un monorepo avec plusieurs espaces le synchronisant ; ou vous pourriez devoir renommer le répertoire du projet.

Modifier le répertoire du projet sur une synchronisation Git existante peut avoir un impact inattendu sur le contenu, le changement ne sera propagé qu'à la prochaine synchronisation (modification effectuée sur GitBook ou nouveau commit dans le dépôt Git).

Si la prochaine opération consiste en une importation depuis le dépôt Git:

GitBook s'attendra à trouver les pages et fichiers dans le répertoire du projet. Si les fichiers n'ont pas déjà été déplacés dans le répertoire du projet du dépôt, le résultat de la synchronisation serait un espace vide sans contenu.

Nous recommandons que la prochaine opération soit un commit déplaçant tous les fichiers liés à GitBook (fichiers markdown, README/SUMMARY et ressources) du dépôt vers leur nouvelle localisation correcte, c'est-à-dire dans le répertoire du projet.

Si la prochaine opération consiste en une exportation de GitBook vers le dépôt Git:

GitBook générera ou mettra à jour de nouveaux fichiers dans le nouveau répertoire du projet. Les fichiers synchronisés avec GitBook seront déplacés vers le nouveau répertoire du projet (autant que possible) ; cela pourrait causer des effets secondaires si d'autres parties de votre système dépendent de ces fichiers.

Mis à jour

Ce contenu vous a-t-il été utile ?