10 jeux amusants à jouer dans le terminal Linux
Agence web » Actualités du digital » Comment vérifier une branche Git distante

Comment vérifier une branche Git distante

Pour extraire une branche d’un référentiel distant, utilisez la commande ‘git fetch’, puis ‘git branch -r’ pour lister les branches distantes. Choisissez la branche dont vous avez besoin et utilisez une commande de la forme « git checkout -b new-branch-name origin/remote-branch-name ». Si vous utilisez plusieurs référentiels, remplacez la partie « origine » de la commande de paiement par le nom de la télécommande à partir de laquelle vous souhaitez retirer la branche.

Si votre équipe de développement utilise Git, vous devrez éventuellement consulter le travail de quelqu’un d’autre en tant que branche à partir d’un référentiel distant. Comme la plupart des actions de branche dans Git, le passage à une branche distante est en fait assez simple.

Git, branches et télécommandes

La philosophie de Git est de brancher souvent. Les branches permettent au développement d’avoir lieu sans altérer la base de code principale. Lorsque vous êtes satisfait que votre nouveau code testé est prêt, vous fusionnez votre nouvelle branche dans une autre branche. Il s’agit généralement de la branche principale ou principale, mais vous pouvez fusionner deux branches.

En raison de cette flexibilité et de la manière légère et rapide dont Git gère les branches et les fusions, la création de branches a été transformée. Dans les anciens systèmes de contrôle de version, la création de branches était un gros problème. La création de branches et la fusion étaient lentes et sujettes aux erreurs. Git a donné aux développeurs une arborescence simple et rapide qui est utilisée pour soutenir de nombreux flux de travail différents.

Si vous travaillez ou faites du bénévolat au sein d’une équipe de développement utilisant Git, vous disposerez d’un référentiel Git « central », distant de l’ordinateur de chaque ingénieur logiciel. C’est ce qu’on appelle le référentiel distant, ou simplement le « distant ». C’est là que les validations et les modifications apportées à votre référentiel local sont envoyées lorsque vous effectuez un push.

Bien sûr, c’est aussi ce que font les autres développeurs. Cela facilite la collaboration. Si vous avez besoin d’accéder au travail d’un autre développeur, il vous suffit de récupérer son code à partir d’une branche du référentiel distant. S’ils ont besoin d’accéder à votre travail, ils récupéreront votre code à partir d’une branche du référentiel qui suit l’une de vos branches locales.

Dans Git, un projet de développement peut avoir plusieurs télécommandes. Cependant, une branche locale ne peut suivre qu’une seule branche distante. Ainsi, tant que vous travaillez avec la télécommande appropriée, vérifier une branche distante avec plusieurs télécommandes revient à utiliser une seule télécommande.

Trouver vos succursales locales

Vous devez éviter les conflits de noms. Si vous avez une branche locale qui porte le même nom que la branche distante que vous allez vérifier, vous avez deux options. Vous pouvez renommer votre branche locale et consulter la branche distante. De cette façon, votre branche locale qui suit la branche distante porte le même nom que la branche distante. Ou, vous pouvez vérifier la branche distante et dire à Git de créer une branche de suivi locale avec un nouveau nom.

Pour connaître les noms des branches de votre dépôt local, utilisez la git branch commande.

git branch

Lister les branches locales avec la commande git branch

Ce référentiel local a une branche principale et trois autres branches. L’astérisque indique quelle est la branche courante. Passer d’une branche à l’autre nécessite de vérifier la branche avec laquelle vous souhaitez travailler.

git checkout new-feature
git status

Vérification d'une branche locale avec la commande git checkout

La première commande change la branche pour nous, de sorte que « new-feature » soit la branche actuelle. Les git status commande vérifie cela pour nous.

Nous pouvons faire des allers-retours entre les branches, valider de nouvelles modifications, extraire des mises à jour de la télécommande et envoyer des mises à jour locales à la télécommande.

Vérification d’une succursale distante

Il y a une branche sur le référentiel distant qui n’est pas présente sur notre machine. Un développeur appelé Mary a créé une nouvelle fonctionnalité. Nous voulons passer à cette branche distante afin de pouvoir créer cette version du logiciel localement.

Si nous effectuons une fetchGit récupérera les métadonnées du référentiel distant.

git fetch

Utilisation de la commande git fetch pour récupérer les métadonnées d'un référentiel distant

Parce que c’est le premier fetch nous avons fait depuis que Mary a poussé sa branche vers le référentiel distant, on nous dit qu’il y a une nouvelle branche appelée « origin/mary-feature ». Le nom par défaut du premier dépôt distant ajouté à un projet est « origin ».

Que nous voyions ce message ou non, nous pouvons toujours demander à Git de lister les branches du référentiel distant.

Les -r (distant) indique à Git de signaler les branches qui se trouvent sur le référentiel distant.

git branch -r

Utilisation de la commande git branch -r pour lister les branches distantes

Le point à noter ici est que Git vérifie son local copie des métadonnées de la télécommande. C’est pourquoi nous avons utilisé le git fetch pour vous assurer que la copie locale des métadonnées est à jour.

Une fois que nous avons repéré la branche que nous voulons, nous pouvons aller de l’avant et la vérifier. Nous utilisons le git checkout commande avec le -b (branche), suivi du nom que nous utiliserons pour la branche locale, suivi du nom de la branche distante.

git checkout -b mary-feature origin/mary-feature

Vérification d'une branche distante avec la commande git checkout -b

Nous pouvons voir que nous avons extrait la branche distante et créé une branche locale qui suivra les modifications dans la branche distante.

git branch

Liste des branches locales avec la commande git branch , avec la copie nouvellement créée de la branche distante sélectionnée comme branche actuelle

Notre nouvelle succursale locale est maintenant notre succursale de travail actuelle.

Gestion des conflits de noms

Si vous avez une branche locale qui porte le même nom que la branche distante, vous pouvez soit renommer votre branche locale avant d’extraire la branche distante, soit extraire la branche distante et spécifier un autre nom de branche locale.

Pour extraire la branche distante dans une branche locale nommée différemment, nous pouvons utiliser la même commande que nous avons utilisée précédemment et choisir un nouveau nom de branche locale.

git checkout -b mary-test origin/mary-feature

Extraction d'une branche distante avec la commande git checkout -b avec la branche locale ayant un nom différent de la branche distante

Cela crée une branche locale appelée « mary-test » qui suivra les commits locaux vers cette branche. Les pushs iront à la branche distante « origin/mary-feature ».

C’est probablement la meilleure façon de gérer les conflits de noms locaux. Si vous voulez vraiment garder le même nom de branche locale et distante, vous devrez renommer votre branche locale avant de vérifier la télécommande. Renommer une branche est trivial dans Git.

git branch -m mary-feature old-mary-branch

Renommer une branche avec la commande git branch -m

Vous pouvez maintenant vérifier la branche distante « origin/mary-feature ».

Gestion de plusieurs référentiels distants

Si plusieurs référentiels distants sont configurés, vous devez vous assurer que vous travaillez avec le référentiel approprié lorsque vous extrayez la branche distante.

Pour répertorier vos référentiels distants, utilisez le remote commande avec le -v (voir).

git remote -v

Liste des référentiels distants avec la commande git remote -v

Pour voir toutes les branches disponibles, nous devons récupérer les métadonnées de toutes nos télécommandes, puis répertorier les branches distantes.

git fetch --all
git branch --all

Utiliser git fetch --all pour mettre à jour les métadonnées locales et utiliser git branch --all pour répertorier toutes les branches, locales et distantes

Nous pouvons voir que la branche que nous voulons est dans la télécommande « origine ». La commande pour le vérifier est dans le même format que nous avons déjà utilisé. Nous devons spécifier le nom distant, « origin », ainsi que le nom de la branche, « mary-feature ».

git checkout -b mary-feature origin/mary-feature

Extraction d'une branche distante avec la commande git checkout -b, en utilisant le nom distant et le nom de la branche

Avant de passer à la caisse

Avant de passer à la caisse, gardez quelques points à l’esprit et tout ira bien.

Assurez-vous d’éviter les conflits de noms. Si vous avez une branche locale portant le même nom que la branche distante, décidez si vous allez renommer la branche locale ou créer une branche avec un nom différent pour suivre la branche distante.

Si vous utilisez plusieurs référentiels distants, assurez-vous d’utiliser la bonne télécommande.

★★★★★