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

Nom de domaine
Votre domaine en un clic
  • 1 cer­ti­fi­cat SSL Wildcard par contrat
  • Fonction incluse Domain Connect pour une con­fi­gu­ra­tion DNS sim­pli­fiée

Git Clone, c’est quoi ?

Con­trai­re­ment à SVN, Git permet de tra­vail­ler si­mul­ta­né­ment dans plusieurs dépôts. Les dé­ve­lop­peurs peuvent ainsi soit tester dif­fé­rentes mo­di­fi­ca­tions sans risque pour l’ensemble du projet, soit faire tra­vail­ler 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 pos­si­bi­lité de copier des dépôts existants et de continuer à tra­vail­ler dans la copie. Toutes les opé­ra­tions 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é­ve­lop­pe­ment. Le processus de clonage établit toutefois au­to­ma­ti­que­ment un lien avec le dépôt d’origine.

Il est aussi important de noter que Git lui-même ne fait pas de dis­tinc­tion 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 com­pa­ra­tif Git et SVN, vous en ap­pren­drez plus sur les points communs et les dif­fé­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 im­por­tante pour le travail quotidien sur dif­fé­rentes étapes de dé­ve­lop­pe­ment 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é­char­ger, 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’en­re­gis­trer la copie sur la machine locale. L’original reste intact et n’intègre pas au­to­ma­ti­que­ment les éven­tuelles mo­di­fi­ca­tions. 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’uti­li­sa­teur SSH est déjà en­re­gis­tré, 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 em­pla­ce­ment spé­ci­fique pour sau­ve­gar­der 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 cor­res­pon­dante :

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

Le dépôt est ainsi cloné et la copie en­re­gis­tré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é­per­toire de travail. Vous pouvez ainsi utiliser les commandes push et pull pour la copie mais vous ne pouvez pas l’éditer di­rec­te­ment. Voici la commande cor­res­pon­dante :

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 prin­ci­pale 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é­ci­fiques mais copierez toujours l’ensemble du ré­fé­ren­tiel.

Cloner des tags spé­ci­fiques

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é­ren­tiels par­ti­cu­liè­re­ment vo­lu­mi­neux avec de nom­breuses ra­mi­fi­ca­tions, il peut être judicieux de ne cloner que les fichiers du ré­per­toire racine. Pour cela, il faut utiliser l’argument « sparse ». Cette ap­pli­ca­tion facilite le travail sur un dépôt, contribue à la vue d’ensemble et améliore la per­for­mance. 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 di­rec­te­ment avec la commande cor­res­pon­dante. 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é di­rec­te­ment à 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 fonc­tion­na­li­tés utiles en nombre. Gratuit le premier mois pour jusqu’à trois projets !

Aller au menu principal