Installez le hub pour rendre votre ligne de commande Git aussi complète que GitHub

De nombreuses personnes s’impliquent dans le développement de logiciels open source en contribuant à des projets sur GitHub. Beaucoup d’entre eux utilisent l’interface utilisateur graphique (GUI) de GitHub, en particulier ceux qui sont nouveaux dans l’interface de ligne de commande (CLI). Mais que faire si vous préférez travailler sur la ligne de commande?

J’ai récemment rencontré Hub, un outil en ligne de commande qui étend Git en ajoutant des fonctionnalités spécifiques à GitHub pour faciliter la familiarisation avec les commandes Git. Donc, si vous en avez assez des interfaces graphiques point-and-click mais que vous voulez de l’aide avec la syntaxe parfois déroutante de Git, hub est l’outil qu’il vous faut.

Avant de continuer à lire, c’est une bonne idée de revoir la terminologie Git en premier.

Installation du concentrateur

L’utilisation de hub dépend de Git, donc d’abord, confirmez que nous l’avons installé:

git --version

Votre version Git doit être 1.7.3 ou plus récente. Ne vous inquiétez pas s’il manque; vous pouvez l’installer rapidement en utilisant Homebrew, un gestionnaire de paquets open source ou le gestionnaire de paquets intégré pour votre distribution (dnf, apt, etc.). J’aime Homebrew, nous allons donc nous en tenir à cela. Homebrew était auparavant connu sous le nom de Linuxbrew sur Linux, mais il utilise maintenant le même nom que la version macOS. Il peut être installé dans votre répertoire personnel, ce qui signifie que vous n’avez pas besoin sudo l’autorisation d’installer des applications avec. Si vous préférez une autre méthode d’installation, consultez la documentation Git.

À installer brasser, L’utilitaire de ligne de commande de Homebrew, sur Fedora:

$ /poubelle/frapper -c "$ (curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

Puisque nous n’avons pas utilisé sudo, le script d’installation installe Homebrew sur ~ / .linuxbrew. Pour en savoir plus sur son fonctionnement, consultez la documentation.

Ensuite, installons centre en utilisant brasser.

$ brasser installer centre

Ensuite, vérifiez que le hub est correctement installé en vérifiant sa version:

$ hub –version
git version 2.25.0
version 2.14.1 du hub


La sortie affiche les versions du hub et de Git. Voila! Vous avez correctement installé le concentrateur.

Premiers pas avec le hub

Faites tourner le hub en utilisant un nouveau référentiel que vous hébergerez sur GitHub. Accédez à n’importe quel dossier dans lequel vous souhaitez initialiser Git:

$ CD Les documents
$ mkdir Tester; CD Tester/
$ git init
Référentiel Git vide initialisé dans /Utilisateurs/SudeshnaSur/Tester/.git/


Placez n’importe quel fichier à l’intérieur. Git ne voit que les fichiers qui ont changé, alors ajoutez-y du texte en utilisant écho:

$ écho "Bonjour" > test.txt

Vérifier la statut git et ajouter:

$ statut git
Sur le maître de branche

Aucun engagement

Fichiers non suivis:
test.txt

rien ajouté pour valider mais présence de fichiers non suivis
$ git add .


En utilisant git add, nous avons mis en place les changements mais ne les avons pas encore engagés. Nous avons besoin d’un compte avant de le faire. Si vous n’en avez pas déjà un, créez un compte GitHub à l’aide de ce guide étape par étape. Ensuite, nous devons configurer notre version locale de Git pour utiliser le nom d’utilisateur et l’e-mail du compte. Ces informations figureront dans chaque message de validation que vous ajoutez à n’importe quel référentiel (puisque vous le définissez comme global):

git config –global user.email « email@example.com »
git config –global Nom d’utilisateur « Votre nom »


Il convient de noter que vous pouvez rendre votre e-mail privé en utilisant cette fonctionnalité. Dans tous les cas, définissez votre e-mail sur votre adresse e-mail GitHub.

Maintenant, nous pouvons créer un commit qui sera attribué à notre nom d’utilisateur. Vérifions le changement existant:

$ git commit -m «Ajouter un fichier de test»
[[Maître (root-commit) 07035c94e038] Ajout d’un tester fichier
1 fichier modifié, 1 insertion(+)
mode de création 100644 test.txt
$ statut git
Sur le maître de branche
rien à engager, travailler arbre nettoyer


Utilisation des fonctionnalités sophistiquées du hub

Jusqu’à présent, tout était identique à l’utilisation git. Voici où cela devient intéressant.

Maintenant, si vous tapez création de hub, il créera un nouveau référentiel sur GitHub avec le même nom que le répertoire courant:

$ hub create
Mise à jour de l’origine
https://github.com/SudeshnaSur/Tester


L’utilisation de hub relie même votre référentiel au miroir distant:

$ git remote -v
origine git@github.com:SudeshnaSur/Test.git (aller chercher)
origine git@github.com:SudeshnaSur/Test.git (pousser)


Clonage et bifurcation avec hub

Vous pouvez également cloner et créer un fork à l’aide de hub au lieu de cliquer sur l’interface graphique GitHub. J’aime que ce hub reconnaisse automatiquement le référentiel que nous ciblons tant qu’il a un espace de noms, puis une barre oblique, puis le nom du référentiel. Donc, si nous voulons cloner le code source du hub lui-même, disponible sur https://github.com/github/hub, il suffit d’écrire:

$ hub clone github/centre
Clonage dans ‘centre’
remote: énumération des objets: 26, terminé.
à distance: comptage d’objets: 100% (26/26), terminé.
remote: Compression d’objets: 100% (22/22), terminé.
à distance: Total 19712 (delta sept), réutilisé 13 (delta 4), réutilisé en pack 19686
Réception d’objets: 100% (19712/19712), 6,76 MiB | 7.25 MiB/s, fait.
Résolution des deltas: 100% (12912/12912), terminé.


Maintenant, je peux apporter une modification normale à ma copie du référentiel. Je vais créer une branche appelée sujet, consultez la branche, puis apportez une modification mineure et validez-la (ce sont toutes des commandes Git standard):

$ CD centre
$ git checkout -b sujet
Passé à une nouvelle succursale ‘sujet’
$ écho « Hey » >test2.txt
$ git add .
$ git commit -m ‘Ajouter tester 2»
[[master cbb6fde5805a] Ajouter tester 2
1 fichier modifié, 1 insertion(+)
mode de création 100644 test2.txt


Ce clone est actuellement github / hub, auquel je n’ai pas accès en écriture. Mais je peux facilement bifurquer le référentiel et y apporter des modifications:

$ fourche de moyeu - origine du nom à distance

La sortie signale que votre compte bifurque les référentiels d’origine et toutes ses branches. Notez que si vous avez déjà une origine nommée à distance, le hub donnera par défaut à la nouvelle télécommande le même nom que votre nom d’utilisateur (si cette terminologie prête à confusion, lisez ce rappel sur les télécommandes et les fourches). Ensuite, poussons la branche, sujet, à ma fourchette:

$ git push sujet d'origine

Je peux maintenant ouvrir une pull request (PR) directement depuis la ligne de commande en tapant:

$ demande de tirage du moyeu

Cela ouvrira un éditeur de texte afin que je puisse ajouter un message PR, puis je peux gérer le PR à partir de là. Je peux même gérer autre PR à partir de la ligne de commande avec le hub pr list commander.

Utilisation d’autres fonctionnalités du concentrateur

L’histoire ne s’arrête pas là; hub offre de nombreuses autres fonctionnalités:

  • Vérifiez le statut d’intégration continue (CI) de nos succursales:
    $ hub ci-status
  • Ouvrez un projet dans votre navigateur Web par défaut:
    $ hub parcourir github/démarrage rapide
  • Synchronisez toutes vos succursales locales pour correspondre au dernier état de la télécommande:
    $ centre synchroniser
  • Énumérez les problèmes attribués à votre nom:
    $ problème de hub --cessionnaire Nom d'utilisateur
  • Répertoriez les problèmes ouverts dans le référentiel dans lequel vous vous trouvez:

    $ hub issue –limite 20
    [[listes uniquement 20 problèmes]

    
    
  • Ouvrez la page des problèmes du projet en cours:
    $ parcourir le hub --problèmes
  • Découvrez un PR tout en examinant un PR:
    $ centre pr check-out 123
  • Fermez un problème après la fusion:
    $ mise à jour du problème de concentrateur 123 --Etat fermé
  • Problème de transfert vers un nouveau référentiel:
    $ transfert de problème de concentrateur 123 ANOTHER-REPO
  • Supprimez un référentiel dans GitHub:
    $ github de suppression de hub/liens wiki

Hub est à la fois utile et facile à utiliser depuis la ligne de commande. Si vous passez de l’interface graphique à la ligne de commande et que vous souhaitez rendre cette expérience plus intuitive, essayez le hub.

Source : https://opensource.com/article/20/3/github-hub Traduit de l’anglais sous licence CC BY-SA 4.0

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *