Git

Git Afficher les branches distantes

Git Afficher les branches distantes
La capacité de Git à créer facilement des branches est une excellente fonctionnalité. Cependant, lorsqu'il s'agit de branches locales et distantes, cela peut devenir un peu compliqué. Mettons en place une situation dans laquelle nous allons créer notre propre référentiel Git qui se comportera comme un référentiel distant. Ensuite, nous allons créer et valider des branches dans notre référentiel distant à partir de project_source. Après cela, nous allons cloner le référentiel distant et jouer avec les branches. L'exercice devrait également vous donner une idée du fonctionnement des référentiels distants tels que GitHub et BitBucket. Vous pouvez le visualiser comme suit :

Commençons par le dépôt Git. Nous allons créer un dossier appelé projet.git et initialisez-le pour devenir le référentiel distant :

$ projet mkdir.git
$ cd projet.git/
$ git init --bare
Dépôt Git vide initialisé dans /Users/zakh_eecs/_work/LearnGIT/git_remote_repository/
projet.git/

Allez maintenant à un nouvel emplacement où vous pouvez créer un dossier propre. Créez le dossier project_source et initialisez-le pour Git :

$ mkdir project_source
 
$ cd project_source
 
$ git init
Dépôt Git vide initialisé dans /Users/zakh_eecs/_work/LearnGIT/git_branching_source/
source_projet/.git/
 
$ touchez Lisez-moi.SMS
 
$ git ajouter -A
 
$ git commit -m "Commission initiale"
[master (root-commit) 176134f] Initial Commit
1 fichier modifié, 0 insertions(+), 0 suppressions(-)
mode de création 100644 Lisez-moi.SMS

Le project_setup est un répertoire Git avec ReadMe.fichier txt. Cependant, il n'est pas connecté à notre référentiel distant. Mettons en place le projet.git pour être le référentiel distant pour project_source. Nous pouvons y parvenir grâce à la commande suivante :

$ git remote add origin /Users/zakh_eecs/_work/LearnGIT/git_remote_repository/project.git
 
$ git push origin master
Compter les objets : 3, terminé.
Objets d'écriture : 100 % (3/3), 213 octets | 0 octet/s, terminé.
Total 3 (delta 0), réutilisé 0 (delta 0)
Vers /Users/zakh_eecs/_work/LearnGIT/git_remote_repository/project.git
* [nouvelle branche]      maître -> maître

Avec la commande git remote add origin, nous avons créé la connexion entre le projet.git et project_source. Avec la commande git push origin master, nous avons poussé notre branche master vers le référentiel distant.

Vérifions nos branches (toujours dans le dossier project_source) :

$ git branche
* Maître
 
$ git branche -r
origine/maître
 
$ git branche -a
* Maître
télécommandes/origine/maître

La première commande n'affiche que la branche locale. L'option -r affiche la branche distante. Et l'option -a affiche à la fois local et distant.

Créons quelques branches dans notre répertoire de travail :

$ développement de la branche git
 
Correctif de branche $ git
 
$ git branch expérimental
 
$ git branche -a
développement
expérimental
correctif
* Maître
télécommandes/origine/maître

Nous avons créé des branches appelées développement, correctif et expérimental. Ils apparaissent dans notre liste de succursales locales. Mais dans les télécommandes/origine, il n'y a que la branche master car c'est la seule qu'on a poussé. Le master star (*) signifie que nous sommes toujours dans la branche master locale. Allons dans la branche de développement, validons les modifications et transférons ces modifications vers le référentiel distant.

$ git checkout développement
Passé à la branche « développement »
 
$ echo abc > Lisez-moi.SMS
 
$ git ajouter -A
 
$ git commit -m "Branche de développement modifiée"
[développement dd9933e] Branche de développement modifiée
1 fichier modifié, 1 insertion (+)
 
$ git push origin développement
Compter les objets : 3, terminé.
Objets d'écriture : 100 % (3/3), 257 octets | 0 octet/s, terminé.
Total 3 (delta 0), réutilisé 0 (delta 0)
Vers /Users/zakh_eecs/_work/LearnGIT/git_remote_repository/project.git
* [nouvelle branche]      développement -> développement

Vérifions maintenant toutes les branches :

$ git branche -a
* développement
expérimental
correctif
Maître
télécommandes/origine/développement
télécommandes/origine/maître

On voit qu'on est dans la branche développement local, mais il y a aussi une branche développement à distance. Lorsque nous avons poussé nos modifications avec le développement git push origin, il a créé la branche de développement dans remotes/origin.

Sortons maintenant de project_source et trouvons un nouvel endroit où nous pouvons avoir un nouveau dossier. Ici, nous allons cloner le dépôt distant avec la commande suivante :

$ git clone /Users/zakh_eecs/_work/LearnGIT/git_remote_repository/project.git
Clonage dans « projet »…
Fini.

Nous avons cloné une nouvelle copie appelée projet à partir du projet.git. Entrez dans le dossier du projet et vérifiez les branches :

$ cd projet
 
$ git branche
* Maître

Lorsque Git crée un clone initial à partir d'un référentiel distant, il n'obtient que la branche master. Si nous utilisons l'option -a, nous voyons :

$ git branche -a
* Maître
télécommandes/origine/HEAD -> origine/maître
télécommandes/origine/développement
télécommandes/origine/maître

Remarquez qu'il n'y a pas de branche de développement local. De plus, nous n'avons jamais poussé les branches hotfix et expérimentales de project_source vers project.git, donc on ne les voit pas. Le référentiel distant a des branches master et development (remotes/origin/HEAD -> origin/master n'est pas une branche, il vous indique simplement où pointe le HEAD).

Intégrez la branche de développement dans notre environnement de travail :

$ git fetch --all
Récupérer l'origine
 
$ git checkout développement
Développement de succursale configuré pour suivre le développement de succursale à distance depuis l'origine.
Passé à une nouvelle branche « développement »

Si vous utilisez une ancienne version de Git, vous devrez peut-être utiliser :

$ git checkout développement origine/développement

Maintenant, si nous utilisons la commande branch, nous obtenons :

$ git branche -a
* développement
Maître
télécommandes/origine/HEAD -> origine/maître
télécommandes/origine/développement
télécommandes/origine/maître

Nous pouvons apporter des modifications à la branche de développement, valider les modifications, puis les pousser à l'aide de la commande de développement git push origin.

En conclusion

Lorsque vous travaillez avec GitHub et BitBucket, vous pouvez utiliser un lien HTTPS ou SSH pour vous connecter à votre référentiel distant. Vous allez donc définir votre origine sur ces liens. Mais les principes de la branche distante sont les mêmes que ceux décrits ici.

Une étude plus approfondie:

Comment utiliser le moteur de triche GameConqueror sous Linux
L'article couvre un guide sur l'utilisation du moteur de triche GameConqueror sous Linux. De nombreux utilisateurs qui jouent à des jeux sur Windows u...
Meilleurs émulateurs de console de jeu pour Linux
Cet article répertorie les logiciels d'émulation de console de jeu populaires disponibles pour Linux. L'émulation est une couche de compatibilité logi...
Meilleures distributions Linux pour les jeux en 2021
Le système d'exploitation Linux a parcouru un long chemin depuis son apparence originale, simple et basée sur le serveur. Ce système d'exploitation s'...