Git Clone : copier des dépôts dans Git

Git Clone permet de copier des dépôts (ou référentiels) existants pour travailler ensuite dans le clone autonome. Il est ensuite possible d’exécuter des commandes push et pull à partir de la copie de travail.

Domaine Internet pas cher

Bien plus qu'un simple domaine !

Personnalisez votre présence en ligne avec un nom de domaine pertinent.

Email
Certificat SSL
Assistance 24/7

Git Clone, c’est quoi ?

Contrairement à SVN, Git permet de travailler simultanément dans plusieurs dépôts. Les développeurs peuvent ainsi soit tester différentes modifications sans risque pour l’ensemble du projet, soit faire travailler des équipes en parallèle sans avoir à attendre les progrès des autres membres de l’équipe.

Pour que les étapes de travail ne partent pas toujours de zéro, Git Clone offre la possibilité de copier des dépôts existants et de continuer à travailler dans la copie. Toutes les opérations de contrôle de version sont alors gérées par le nouveau dépôt local. Le clone peut devenir la base pour toutes les étapes de développement. Le processus de clonage établit toutefois automatiquement un lien avec le dépôt d’origine.

Il est aussi important de noter que Git lui-même ne fait pas de distinction entre le dépôt central et ses clones, ces derniers étant perçus comme des dépôts à part entière. Au lieu d’alimenter le dépôt central d’origine, les commits sont partagés entre eux par Git Push et Git Pull.

Conseil

Dans notre comparatif Git et SVN, vous en apprendrez plus sur les points communs et les différences entre les deux logiciels de gestion de versions.

La syntaxe de Git Clone

Git Clone est une commande Git simple mais elle est très importante pour le travail quotidien sur différentes étapes de développement d’un même projet. La syntaxe de la commande est toujours la même et figure d’ailleurs dans notre Git Cheat Sheet avec PDF à télécharger, un outil très pratique. Voici comment se présente sa structure classique :

git clone <nom-depot></nom-depot>

Cette commande permet de copier le dépôt en exemple et d’enregistrer la copie sur la machine locale. L’original reste intact et n’intègre pas automatiquement les éventuelles modifications. Les dépôts dans le système de données local ainsi que les dépôts sur d’autres machines, qui peuvent être appelés via HTTP ou SSH, peuvent aussi servir de base pour Git Clone. Pour HTTP, voici à quoi cela ressemble :

git clone https://site-exemple.fr/depot-externe.git

Si un nom d’utilisateur SSH est déjà enregistré, voici la syntaxe :

git clone ssh://utilisateur@exemple.fr/nouveau-depot.git
cd nouveau_repository

Définir le dossier-cible

En plus de la méthode décrite ci-dessus, Git Clone permet aussi de choisir un emplacement spécifique pour sauvegarder la copie. Ce processus facilite le travail et offre une meilleure vue d’ensemble. Pour cela, il suffit de placer le dossier cible après la commande dans la syntaxe. Voici la commande correspondante :

git clone <depot> <dossier-cible></dossier-cible></depot>

Le dépôt est ainsi cloné et la copie enregistrée dans le dossier indiqué. Toutes les branches, tous les fichiers et tous les commits sont pris en compte et clonés de la même façon.

Git Clone et mirror

Si vous souhaitez créer via Git Clone une copie qui ne pourra pas être éditée ni modifiée, utilisez la mention « mirror ». Cette méthode inclut aussi les branches et les références. Voici à quoi ressemble la commande :

git clone --mirror

Git Clone et bare

Avec l’argument « bare », vous demandez à Git de copier le dépôt distant mais sans tenir compte du répertoire de travail. Vous pouvez ainsi utiliser les commandes push et pull pour la copie mais vous ne pouvez pas l’éditer directement. Voici la commande correspondante :

git clone --bare

Cloner une branche unique

Il est aussi possible de cloner une branche unique. Pour cela, utilisez là encore Git Clone et la commande suivante :

git clone –branche-unique

Dans ce cas, seule la branche principale sera clonée. Si vous souhaitez cloner une autre branche, vous devez la désigner de manière explicite avec la commande suivante :

git clone [url] --branch [branche] –branche-specifique

La plupart du temps, vous n’aurez cependant pas à cloner des branches spécifiques mais copierez toujours l’ensemble du référentiel.

Cloner des tags spécifiques

Vous pouvez aussi cloner certains tags avec Git Clone. Voici à quoi ressemble le code :

git clone --branch <tag> <depot></depot></tag>

Git Clone et sparse

Dans le cas de référentiels particulièrement volumineux avec de nombreuses ramifications, il peut être judicieux de ne cloner que les fichiers du répertoire racine. Pour cela, il faut utiliser l’argument « sparse ». Cette application facilite le travail sur un dépôt, contribue à la vue d’ensemble et améliore la performance. Voici comment cette commande se présente :

git clone --sparse

Utiliser des templates avec Git Clone

Si vous souhaitez appliquer un modèle Git à un dépôt cloné, vous pouvez le faire directement avec la commande correspondante. Le code est le suivant :

git clone --template=<template> <repository></repository></template>

Cela permet de cloner le dépôt et d’appliquer le modèle souhaité directement à la branche locale.

Conseil

La solution la plus simple pour déployer des sites Web et applis ! Avec Deploy Now de IONOS, optimisez vos flux de travail et profitez de fonctionnalités utiles en nombre. Gratuit le premier mois pour jusqu’à trois projets !