> 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/latex/fr/base-de-connaissances/044-github-synchronization.md).

# Synchronisation GitHub

**Synchronisation GitHub** est une [fonctionnalité premium](/latex/fr/base-de-connaissances/120-overleaf-premium-features.md). Les fonctionnalités premium d’Overleaf sont disponibles pour les participants aux [Overleaf Commons](https://www.overleaf.com/for/universities), les membres du groupe [abonnements](https://www.overleaf.com/for/groups), et les propriétaires d’un abonnement individuel [abonnements](https://www.overleaf.com/user/subscription/plans).

Résumé

La fonctionnalité de synchronisation GitHub vous permet de lier directement vos projets Overleaf à un dépôt GitHub servant de dépôt distant pour votre projet Overleaf, et offre un moyen de pousser et de tirer des modifications entre eux. La synchronisation GitHub ne peut être utilisée que sur [Github.com](https://www.github.com) et ne peut pas être utilisée pour se connecter à d'autres installations d'entreprise GitHub.

Vous pouvez synchroniser un projet Overleaf avec un dépôt GitHub soit en créant un nouveau projet Overleaf à partir d'un dépôt GitHub existant, soit en créant un nouveau dépôt GitHub à partir d'un projet Overleaf existant. Il n'est pas possible de synchroniser un projet Overleaf existant avec un dépôt Github existant.

* La synchronisation GitHub est activée en liant votre compte GitHub à votre compte Overleaf
* De nouveaux projets peuvent être créés à partir de dépôts GitHub existants
* Des dépôts peuvent être créés dans GitHub à partir de projets Overleaf existants
* Les projets et dépôts liés sont maintenus synchronisés à l'aide de l' **GitHub** option dans le **Menu**

### Lier votre compte Overleaf à votre compte GitHub

Afin d'utiliser la fonctionnalité de synchronisation GitHub, vous devez lier votre compte Overleaf à votre compte Github. Vous pouvez le faire dans votre [Paramètres du compte](https://www.overleaf.com/user/settings). Veuillez noter que la capacité d'Overleaf à se connecter à certains dépôts ou organisations associés à votre compte peut dépendre des paramètres d'autorisation configurés dans GitHub.

### Créer un nouveau projet Overleaf à partir d'un dépôt GitHub

Depuis le menu Nouveau projet, vous pouvez sélectionner l'option GitHub. Cela affichera une liste des dépôts visibles par Overleaf via votre compte GitHub, en fonction de vos paramètres d'autorisation GitHub.

![Créer un nouveau github.png](/files/68f1f62adb91bcc6080692a354e757bee8c6736d)

Quelques points à noter lors de la création d'un nouveau projet Overleaf à partir d'un dépôt GitHub existant.

* Des restrictions de taille sont appliquées aux projets Overleaf, ce qui peut empêcher l'utilisation de dépôts GitHub plus volumineux pour créer un projet. Veuillez consulter [cette page](/latex/fr/base-de-connaissances/119-overleaf-plan-limits.md) pour un aperçu des limites appliquées à la taille et au nombre de fichiers dans un projet Overleaf.
* Les projets Overleaf ne prennent pas en charge les sous-modules Git ni Git LFS.

### Créer un nouveau dépôt GitHub à partir d'un projet Overleaf

Depuis le menu Projet Overleaf, vous pouvez sélectionner GitHub comme l'une des options de synchronisation. Cela affichera une boîte de dialogue où vous pourrez indiquer le nom d'un nouveau dépôt GitHub à synchroniser avec votre projet Overleaf.

![Menu du projet github.png](/files/a23a38aa0ead6608fa5ac621c8d0758437f25ed1)

### Synchronisation avec GitHub

La synchronisation entre GitHub et Overleaf ne se fait pas automatiquement ; les options de synchronisation s'affichent en cliquant sur **GitHub** option dans le **Menu**. À ce moment-là, la fenêtre modale GitHub indiquera si de nouvelles modifications doivent être récupérées depuis GitHub. L'option de pousser les modifications vers GitHub vous sera toujours proposée (remarque : cette option s'affichera même si Overleaf et GitHub sont à jour).

![image de la fenêtre modale GitHub](/files/04b70de2d129fffce24e071a0b36a4c473cf53f0)

Les commits vers GitHub sont créés lorsque le bouton Envoyer les modifications Overleaf vers GitHub est cliqué. À ce moment-là, un message de commit facultatif peut être fourni.

* Les modifications dans l'historique Overleaf provenant de GitHub seront affichées comme étant rédigées par anonyme.
* Les modifications dans l'historique GitHub provenant d'Overleaf seront affichées comme étant rédigées par le propriétaire du compte GitHub connecté.

### Résolution des conflits de fusion

Il peut arriver que, lorsque des modifications sont apportées à la fois dans Overleaf et dans Github, Git ne puisse pas déterminer comment les fusionner automatiquement. Par exemple, si votre collaborateur a modifié une ligne dans Overleaf et que vous avez modifié la même ligne dans le dépôt Github, Overleaf peut ne pas être en mesure de choisir quelle version conserver.

Lorsque cela se produit, au lieu de fusionner dans votre branche principale, nous poussons une nouvelle branche vers votre dépôt. Cette branche aura un nom descriptif (incluant la date et l'heure de création de la branche) et contiendra la version du document dans Overleaf. Lorsque vous tenterez de synchroniser avec GitHub, un message s'affichera pour indiquer qu'un conflit de fusion doit être résolu.

![Boîte de dialogue de conflit de fusion GitHub](/files/eeeecb2eaa4eca57f2fba1e7bdc28eb757c55639)

Pour revenir à la synchronisation, vous devez fusionner la branche Overleaf dans votre branche principale (par défaut). Vous pouvez le faire sur votre ordinateur en récupérant les deux branches et en les fusionnant avec git ou tout autre outil, puis en repoussant le résultat vers Github. Vous pouvez également effectuer la fusion directement sur Github en créant une pull request à partir de la branche Overleaf et en utilisant leur fonctionnalité de résolution des conflits. Les deux approches sont expliquées dans la [documentation Github](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/addressing-merge-conflicts).

### Accéder aux dépôts dans vos organisations GitHub

Vous pouvez synchroniser des projets Overleaf avec des dépôts associés à votre compte GitHub connecté, et vous pouvez également synchroniser avec des projets dans des organisations GitHub dont vous êtes membre. Afin de synchroniser avec des dépôts dans vos organisations GitHub associées, ces organisations doivent autoriser l'accès par l'application OAuth Overleaf.

* Si vous êtes membre d'une organisation, vous pouvez suivre les étapes décrites [ici](https://help.github.com/articles/requesting-organization-approval-for-oauth-apps/) pour demander à l'application Overleaf l'accès à votre organisation.
* Si vous êtes le propriétaire de l'organisation, vous pouvez suivre les étapes décrites [ici](https://help.github.com/articles/approving-oauth-apps-for-your-organization/) pour approuver l'application Overleaf pour l'organisation.

### Limites de fichiers de la synchronisation GitHub

Les projets Overleaf sont soumis à des limitations de taille individuelles, ainsi qu'à des limites sur le nombre total de fichiers dans un projet, comme indiqué [ici](/latex/fr/base-de-connaissances/119-overleaf-plan-limits.md). Bien que Git puisse gérer un seul commit modifiant des milliers de fichiers, l'API GitHub utilisée par la fonctionnalité de synchronisation GitHub d'Overleaf impose également des limites sur le nombre de fichiers pouvant être poussés ou récupérés. Il est recommandé de limiter le nombre de fichiers dans un commit individuel à moins de 100 fichiers, et la taille globale du projet à moins de 100 Mo si vous utilisez la synchronisation GitHub. Les projets dépassant ces tailles peuvent fonctionner, mais nous recommandons de rester dans ces limites afin d'éviter d'éventuels problèmes de synchronisation.

### Déconnecter un projet d'un dépôt

Bien qu'il soit possible de créer plusieurs projets à partir d'un seul dépôt GitHub existant, **il n'est pas possible de modifier le dépôt associé à un projet donné**. Une fois qu'un projet est lié à un dépôt, il ne peut pas être délié et utilisé pour créer un nouveau dépôt. Si vous devez créer un nouveau dépôt à partir d'un projet particulier, vous devez d'abord faire une nouvelle copie du projet, puis créer le nouveau dépôt à partir de la copie.

### Limitations connues

**Branches**: Le système Git d'Overleaf ne prend pas en charge les branches.

**Liens symboliques**: Le système Git d'Overleaf ne gère pas les liens symboliques. Un lien symbolique peut être poussé dans un projet Overleaf, mais il sera converti en fichier normal et remplacera le lien symbolique local lors de la prochaine récupération du projet.

**Permissions des fichiers**: Le système Git d'Overleaf ne conserve pas les permissions d'exécution. Lors de l'utilisation de la synchronisation GitHub, si des fichiers avec le bit d'exécution dans GitHub sont synchronisés vers Overleaf, un commit automatique est déclenché par Overleaf pour réinitialiser les permissions des fichiers.

**Git LFS**: Les projets Overleaf ne prennent pas en charge Git Large File Storage.

**Sous-modules Git**: Les projets Overleaf peuvent agir comme sous-modules Git au sein d'autres dépôts, mais ne peuvent pas contenir d'autres sous-modules Git. Pour référencer des fichiers d'autres projets, il est suggéré d'utiliser la fonctionnalité d'ajout depuis un autre projet.

**Suivi des modifications et commentaires**: Malheureusement, les récupérations de GitHub vers Overleaf peuvent entraîner la perte ou le déplacement des modifications suivies et des commentaires ; par conséquent, nous ne recommandons pas de mélanger un travail actif dans GitHub avec l'utilisation des modifications suivies et/ou des commentaires.

**Synchronisation directe avec GitHub Enterprise ou GitLab :** L'API GitHub utilisée par Overleaf ne peut se connecter qu'aux dépôts hébergés sur github.com. Vous pouvez synchroniser indirectement avec des projets hébergés chez d'autres fournisseurs en utilisant l' [intégration Git d'Overleaf](/latex/fr/base-de-connaissances/040-git-integration.md) d'Overleaf.

**Connecter un projet existant à un dépôt existant**: Il n'est pas possible de synchroniser un projet Overleaf existant avec un dépôt Github existant.

**Paternité des envois vers GitHub**: Le seul utilisateur Github dont Overleaf a connaissance est l'utilisateur dont le compte GitHub est lié au compte Overleaf et qui possède ce projet. Tous les commits sont effectués à l'aide d'une API GitHub qui réalise explicitement ces commits sous l'identité de cet utilisateur. Ainsi, tous les commits apparaîtront dans l'historique Git de GitHub comme provenant de l'utilisateur lié. Dans l'historique d'Overleaf, les modifications sont affichées comme "Anonyme (via GitHub)".

**Historique Git et historique Overleaf :** Les modifications côté Overleaf n'ont pas de correspondance un-à-un avec les commits GitHub. Plusieurs utilisateurs peuvent apporter des modifications côté Overleaf, mais ces modifications seront regroupées en un seul commit sous l'utilisateur connecté à GitHub lorsque la synchronisation sera déclenchée.


---

# 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/latex/fr/base-de-connaissances/044-github-synchronization.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.
