Détails
Comment cloner une branche Git spécifique ?
Git clone se comportera en copiant la branche de travail courante distante dans la branche locale.
Existe-t-il un moyen de cloner une branche spécifique par moi-même sans changer de branche sur le dépôt distant ?
2764
3
Exemple :
Avec Git 1.7.10 et plus, ajoutez
--single-branch
pour empêcher la récupération de toutes les branches. Exemple, avec la branche OpenCV 2.4 :L'option
--single-branch
est valide à partir de la version [1.7.10][1] et ultérieure.Veuillez voir aussi l'autre réponse que beaucoup de gens préfèrent.
Vous pouvez également vous assurer que vous comprenez la différence. La différence est la suivante : en invoquant
git clone --branch url
, vous allez chercher toutes les branches et en extraire une. Cela peut, par exemple, signifier que votre dépôt a une branche de documentation ou wiki de 5kB et une branche de données de 5GB. Et chaque fois que vous voulez modifier votre page d'accueil, vous pouvez finir par cloner 5 Go de données.Encore une fois, cela ne veut pas dire que
git clone --branch
n'est pas le moyen d'accomplir cela, c'est juste que ce n'est pas toujours ce que vous voulez accomplir, quand vous demandez à cloner une branche spécifique.Au moment de l'écriture de la réponse originale ci-dessous, git n'avait pas d'option
--single-branch
, mais préservons-la pour la pleine satisfaction des abeilles en colère.La réponse si mal aimée par les copieurs était la suivante :
[1] : https://github.com/git/git/blob/master/Documentation/RelNotes/1.7.10.txt
Créez une branche sur le système local avec ce nom. Par exemple, disons que vous voulez obtenir la branche nommée "branch-05142011".
git branch branch-05142011 origin/branch-05142011
Vous obtiendrez un message du type - "Branch branch-05142011 configuré pour suivre la branche distante branch-05142011 depuis origin." ;
Maintenant il suffit de vérifier la branche comme ci-dessous et vous avez le code -
git checkout branch-05142011