Synchroniser un repo Github avec Gitlab
Publié le Mis à jour lePour des raisons techniques, j’ai eu besoin de cloner un repo existant sur Github dans l’alternative open-source Gitlab. Je souhaitais synchroniser tout les changements effectués dans le repo Gitlab en les poussant vers le repo Github. Gitlab offre la synchronisation en PUSH vers Github à tous les utilisateurs tandis que la synchronisation en GET est réservée aux comptes Gitlab PREMIUM (payant).
Clonage d’un repo Github dans Gitlab
Gitlab propose de créer un repo en clônant un repo pré-existant d’un autre service via “Importer un projet”. Il suffit de fournir l’URL du repo Github.

L’interface demande ensuite de remplir des champs :
- le nom d’utilisateur correspond au nom d’utilisateur du repo distant Github
- le mot de passe correspond à un token d’accès personnel que nous devons générer depuis https://github.com/settings/tokens pour autoriser Gitlab à tirer depuis notre compte Github
- cocher la case “Dépôt miroir”

Pousser le repo Gitlab vers Github automatiquement
La poussée des modifications vers le dépôt Github comprend Les branches, les étiquettes et les commits.
Pour cela il faut se rendre dans le repo Gitlab -> Paramètres -> Dépôt -> Dépôts miroirs. Il faut de nouveau coller l’url du dépôt distant Github et placer le nom d’utilisateur Github. Le champ “mot de passe” correspond au token généré précédemment sur Github.

N’importe quel commit effectué sera poussé depuis Gitlab vers Github.