Comme vous le savez peut-être, GIT est un système de contrôle de version distribué. Les ingénieurs l'utilisent pour suivre les modifications apportées au code source au cours du processus de développement logiciel. Si vous êtes développeur, en particulier si vous débutez dans la profession, vous devez apprendre quelques-unes des commandes GIT les plus utiles.
Regardons les meilleures commandes bash GIT sur lesquelles vous devriez vous renseigner.
Table des matières afficher
Pour configurer le projet : une explication des invites GIT
GIT INIT
CONFIG
CLONER
ALIAS
Commandes pour effectuer et annuler des modifications
STATUT
AJOUTER
COMMETTRE
RÉINITIALISER
PLANQUE
REVENIR
Commandes Git pour les efforts d'équipe
BIFURQUER
Départ
TIRER
COMMETTRE
POUSSER
FUSIONNER
REBASER
Après validation des commandes
ENREGISTRER
MONTRER
Pour configurer le projet : une explication des invites GIT
Recommandé pour vous : 5 applications gratuites géniales qui vous aideront à apprendre à coder.
GIT INIT
Supposons que vous venez de créer un projet dans votre IDE préféré et que vous devez connaître les invites PowerShell GIT. Vous devrez configurer un référentiel GIT fonctionnel.
Ce faisant, vous devez indiquer à GIT quel répertoire doit être utilisé et exécuté. La fonctionnalité git init est la façon dont vous feriez cela. GIT créera un fichier caché. git et utilisez-le pour organiser ses fichiers comme d'autres sous-répertoires.
Voici une liste de commandes git init pour les prochains éditeurs populaires :
Atome
git config –global core.editor « atom –wait »
BBEdit (Mac, avec des outils de ligne de commande)
git config –global core.editor "'C:\Program Files\Sublime Text 3\sublime_text.exe' -w" (voir également la note ci-dessous)
Vigueur
git config –global core.editor "vim"
Code Visual Studio
git config -global core.editor "code -wait"
CONFIG
Après avoir créé votre référentiel, vous pourriez peut-être y configurer certains éléments essentiels, comme la configuration de votre nom d'utilisateur. C'est pourquoi vous aurez besoin d'une commande CONFIG. Toute commande d'une liste GIT l'inclura.
Vous pouvez configurer votre nom d'utilisateur en exécutant :
Cela placera le nom d'utilisateur dans le référentiel à proximité. Cependant, notez que par la suite, si vous souhaitez créer un deuxième référentiel, vous devrez alors configurer vos informations d'utilisateur une fois de plus.
Vous n'avez pas besoin de le faire si vous ajoutez une option de commande globale. Il définira globalement vos informations :
Vous pouvez également utiliser une commande CONFIG pour configurer d'autres aspects. Vous pouvez placer la commande dans le fichier de configuration.
CLONER
Pour obtenir un référentiel distant sur votre ordinateur, vous devez configurer une commande CLONE. Vous faites cela avec votre paramètre git clone et en passant par l'URL en tant que paramètre. Cette commande doit cloner l'intégralité du référentiel distant sur votre machine. Ceci est une autre des commandes du hub GIT qui vous servira bien en tant que développeur.
Avec une commande ALIAS, vous pouvez créer des raccourcis vers vos commandes préférées. C'est un outil qui vous aide à envelopper une séquence de commandes et à les enregistrer sous un nom. Cela serait considéré comme l'une des commandes GIT courantes que vous utiliserez souvent en tant que développeur.
Vous pouvez également ajouter les alias directement dans votre fichier de configuration. Dans ce cas, la directive de l'exemple sera transformée en la configuration suivante dans le fichier de configuration global. Par exemple, vous pouvez configurer les raccourcis suivants pour les commandes les plus courantes :
Commandes pour effectuer et annuler des modifications
STATUT
C'est la commande que vous utiliseriez si vous vouliez afficher l'état de la zone de transit et votre configuration de travail. En l'utilisant, vous pouvez voir quelles modifications ont été mises en scène et lesquelles ne l'ont pas été.
AJOUTER
Avant de valider votre fichier modifié ou nouveau, il doit être ajouté à votre zone de staging. Pour ce faire, exécutez une directive git add . Vous devez passer le nom du fichier et du répertoire en paramètre. Vous pouvez entrer f_your_file>. À ce stade, votre fichier sera supprimé de votre liste de "modifications à valider".
L'ajout de -p (ou —patch) vous permet de sélectionner des parties de chaque fichier suivi à valider. Ensuite, chaque commit ne contient que les modifications associées.
COMMETTRE
Supposons que vous ayez terminé l'implémentation de certaines fonctionnalités et que vous souhaitiez enregistrer les modifications. Consultez la liste des "modifications à valider". Une fois cela fait, vous saurez que tous les fichiers nécessaires ont été préparés. C'est alors que vous pouvez exécuter git commit .
Après avoir exécuté cette commande, l'éditeur par défaut s'ouvrira. Vous devez ensuite entrer votre message COMMIT.
Si votre message est court, incluez-le dans la commande GIT COMMIT comme suit :
git commit -m “Your_first_commit_message.”
Vous pouvez également ajouter l'option -a. Ce faisant, vous pouvez vous assurer que GIT examinera votre arbre de travail. Il exécutera ensuite GIT ADD pour les fichiers nouveaux et modifiés, ainsi que git rm pour tous les fichiers supprimés avant la validation.
Peut-être avez-vous oublié d'ajouter un fichier à votre commit. Vous ne voulez pas créer une autre commande de validation pour ce fichier. Vous pouvez utiliser une option de modification à la place.
Les commits publics ne doivent jamais être modifiés. N'oubliez pas que vos collègues ont peut-être basé leur travail sur ce commit. Vous ne voulez pas les confondre à cause des modifications qu'ils ont apportées.
RÉINITIALISER
git reset est un autre outil qui devrait vous être utile lorsque vous commencez votre vie professionnelle en tant que développeur. Il s'agit d'une commande qui vous aide à reformater les modifications. Il existe plusieurs façons de l'utiliser, mais un exemple courant est lorsque vous fournissez un mode et l'identification du commit comme s'il y avait des arguments, comme ceci :
git reset <mode> <commit>.
Il existe plusieurs possibilités de réinitialisation. Pour les comprendre, vous devez connaître les trois arbres GIT.
Mixed est une invocation par défaut avec GIT RESET. Il utilise l'option mixte ainsi que HEAD comme identifiant de validation. Il réinitialise les pointeurs de référence et déplace toutes les modifications de l'index étagé vers la zone de travail. La zone de transit correspond alors à l'état dans lequel la validation spécifiée se produit.
Hard : L'option hard réinitialise les pointeurs de référence et ajuste l'index de staging. Il modifie également le répertoire de travail, correspondant à l'état du commit spécifique. Essentiellement, cela réinitialise tous les aspects. Avant de procéder à une réinitialisation matérielle, connaissez les modifications globales que vous êtes sur le point d'apporter.
Soft : il y a aussi l'option soft qui ne touche pas l'index de staging ou votre répertoire de travail. Les pointeurs de référence sont tout ce qui est mis à jour.
PLANQUE
Disons que vous travaillez depuis un certain temps sur un certain domaine de fonctionnalités. Vous voyez qu'il y a un bogue qui doit être corrigé à ce moment-là. Mais vos implémentations de fonctionnalités sont toujours en cours et vous ne souhaitez pas infliger de modifications de branche inachevées. Votre commande git stash est ce dont vous aurez besoin.
Cette méthode vous permet de conserver vos modifications dans la pile STASH. Ensuite, vous pouvez en faire une liste, ainsi que la liste git stash.
Il n'y a pas de restrictions pour la branche sur laquelle vous pouvez appliquer votre réserve. Vous pouvez stocker les modifications dans une branche et les appliquer à une autre lorsque vous le souhaitez.
Pour appliquer les modifications stockées, utilisez votre directive git stash apply . Il applique les modifications les plus récentes stockées dans la pile. Si vous souhaitez appliquer des modifications plus anciennes, vous pouvez spécifier le nom comme un git stash apply [email protected]{1}. Ceci s'applique à une autre réserve dans la pile.
Une fois que vous avez appliqué une réserve en utilisant une directive d'application, elle ne sera pas supprimée de cette pile. Vous pouvez voir cela comme une commande de flux GIT que vous utiliserez fréquemment.
Vous aimerez peut-être : Quelles sont les tendances en matière de développement d'applications mobiles en 2020 ?
REVENIR
Peut-être avez-vous jugé bon de pousser vos modifications terminées vers sa branche d'origine et avez remarqué qu'un de vos commits n'avait pas besoin d'être là-bas. Corrigez-le en ajoutant une autre directive qui supprimera la précédente. La directive REVERT vous y assiste. Vous devez spécifier votre identifiant de validation et annuler en tant que paramètre : git revert <commit_id> .
La commande trouvera des informations pratiques, y compris le nom de la branche, le nombre de commits qui ont été effectués après ou avant qu'elle ne soit distante. En outre, vous pouvez voir les fichiers nouveaux et modifiés sous forme de plusieurs listes :
Modifications à valider.
Modifications non configurées pour l'engagement.
Fichiers non suivis.
Commandes Git pour les efforts d'équipe
BIFURQUER
Avec les directives de branche git , votre système utilisera la liste des branches. Si vous voulez regarder les branches distantes, alors la branche git -r est la façon dont vous le faites. Si vous souhaitez voir les branches locales et distantes, utilisez git branch -a.
Vous pouvez supprimer une branche en utilisant : git branch -d <branch_name>.
Départ
Il s'agit d'une autre directive GIT régulièrement utilisée. Pour travailler dans la branche, vous devez exécuter un switch. git checkout est la façon dont on passe facilement d'une branche à une autre. Vous pouvez l'utiliser pour parcourir les fichiers, ainsi que les commits. Git checkout <name-of-your-branch> est la façon dont il est exécuté.
N'oubliez pas ce qui suit si vous souhaitez passer d'une branche à l'autre avec succès :
Les modifications apportées à la branche actuelle peuvent être validées ou stockées lorsque vous basculez
Toute succursale que vous cochez doit exister dans votre local
Il existe également une commande de raccourci qui vous permet de créer et de basculer vers une branche en une seule fois :
git checkout -b <name-of-your-branch>.
Il s'agit d'une commande qui crée une directive différente dans votre local (-b représente la branche). Il examine la dernière branche directement après sa création.
TIRER
Avec la directive git pull , vous effectuez un nouveau téléchargement de données via un référentiel distant et une intégration avec le plus proche. Lorsque vous exécutez cette commande, vous actualisez les branches locales, ainsi que toutes les modifications de votre terminal distant.
Il existe également un moyen par défaut d'intégrer les nouvelles modifications. Utilisez une fusion. Vous pouvez le changer en rebase si vous utilisez l'option : git pull –rebase .
Il est recommandé de toujours placer les modifications dans un référentiel propre à proximité sans modifications non validées.
COMMETTRE
Il s'agit d'une directive qui peut "instantaner" ou enregistrer le fichier dans votre historique des versions. Vous entrez git commit -m "[ Tapez le message de validation]" en l'utilisant.
C'est la commande qui valide tous les fichiers que vous avez ajoutés, ainsi que la commande GIT ADD. Il valide également efficacement les fichiers qui ont changé depuis lors.
POUSSER
Après avoir validé toutes les modifications, vous souhaitez probablement pousser vers un référentiel distant. De cette façon, ils sont disponibles pour vos coéquipiers.
Si vous exécutez GIT PUSH, cela "poussera" les modifications récentes d'une zone actuelle vers sa télécommande. Si, via la création d'une branche localement, vous poussez la branche entière vers un référentiel distant, c'est très bien. Cette directive vous permet de faire cela : git push -u origin <replace_with_branch_name> .
C'est ainsi que vous poussez une branche qui a un nom spécifié vers le référentiel d'origine. La branche distante doit utiliser le même nom que la branche locale.
FUSIONNER
Nous avons également dû mettre MERGE sur cette liste d'invites GIT. Vous souhaiterez intégrer la branche de fonctionnalité ou corriger les bogues sur une autre branche à un moment donné. La fusion de votre branche vous permet de le faire. Exécuter une commande git merge est ce que vous devrez faire.
Après avoir exécuté la commande, deux variétés de la fusion peuvent se produire, la fusion à trois voies ou la fusion rapide.
Une fusion rapide est utilisée lorsqu'il existe un chemin linéaire entre les branches que vous souhaitez fusionner. Supposons que vous ayez créé une branche de correction de bogues à partir du master. Vous avez résolu le problème et vous souhaiterez le fusionner dans un maître. Cependant, personne n'a fait de mise à jour de la branche. GIT peut fusionner une branche elle-même, ce qui résoudra le problème.
Une fusion à trois voies a lieu lorsqu'il n'y a pas de chemin linéaire entre les branches. Comme dans le dernier exemple, vous avez conçu une branche de correction de bogues à partir de la version principale. Vous avez corrigé le bogue, et maintenant vous devez le fusionner avec git merge <branch> .
Peut-être découvrirez-vous que quelqu'un a mis à jour le maître. Pour connecter les branches, GIT doit créer un nouveau commit où les modifications se combinent.
C'est alors qu'un problème survient. Les deux branches ont changé le bloc de code identique. GIT ne peut pas mélanger les modifications sans votre aide. Accepter un changement est le moyen le plus simple de le faire.
Cependant, vous pouvez également combiner les modifications. Lorsque cela se produit, GIT modifie les fichiers concernés avec des indicateurs visuels. Cela vous permet de localiser facilement les problèmes. Certains repères visuels sont utilisés :
<<<<<< — shows the place the conflict began ====== — separates changes from different branches >>>>>> — shows where the conflict ends
Une fois que vous avez résolu les conflits et supprimé les marqueurs, les zones en conflit seront ajoutées à votre zone de staging avec git add .
Si une erreur a été commise ou si vous souhaitez aller dans une direction différente, exécutez git merge –abort. Ce faisant, votre branche ne sera pas modifiée.
Sinon, utilisez les commandes git commit. Cela conclura la fusion en créant un nouveau commit.
Une autre commande utile est la commande git mergetool qui lance simplement un assistant de fusion externe au cas où vous auriez des problèmes avec une fusion dans Git.
Vous pourriez également aimer : Meilleur langage de programmation pour le développement d'applications iOS.
REBASER
Intégrez d'abord les modifications en utilisant REBASE, puis fusionnez. Avec REBASE, vous réécrivez la trame de fond du programme. Les commits publics ne devraient jamais être rebasés car, par exemple, un membre de l'équipe pourrait baser son travail sur eux.
Au lieu de choisir de fusionner une branche spécifique avec la vôtre, vous pouvez rebaser votre branche sur une branche spécifique. Mais qu'est-ce qui fait ce protocole de rebase que vous utilisez ?
Ce qui se passera, c'est que les changements seront intégrés d'une branche spécifique à une autre. La base de la deuxième branche sera modifiée d'un commit à un autre. Il semblera que la deuxième branche a été créée à partir de la première. Cela vous donne un historique clair et linéaire.
Git rebase <name_of_branch_to_rebase_on> est la façon dont vous exécutez la commande.
C'est le premier mode ou mode standard de la commande rebase. Ensuite, il y a le deuxième mode, également appelé mode interactif. Vous pouvez l'utiliser pour modifier facilement une séquence de commits avant de les inclure dans une autre branche, autrement appelée la branche distante.
Après validation des commandes
ENREGISTRER
Cette directive sert à répertorier l'historique des versions de la branche actuelle. Pour l'exécuter, saisissez git log –follow[file] .
Cette directive répertorie un historique des versions de fichier. Le changement de nom des fichiers sera inclus. git log imprime un historique de validation.
Plusieurs options peuvent être utilisées dans ce scénario. L'un d'eux est le git log –stat. Pour chaque commit dans l'historique, une liste de noms sera imprimée. Les fichiers supprimés, modifiés ou ajoutés seront accessibles. Les montants de ligne qui ont été supprimés ou ajoutés peuvent être vus. Vous remarquerez qu'il y a aussi un résumé que vous pouvez parcourir.
MONTRER
L'invite Afficher que les développeurs utilisent peut afficher les détails de divers objets. Lorsque nous disons « objets », nous parlons de commits ou de balises. git show peut être utilisé pour afficher une ancienne version de fichier. Par exemple, vous pouvez utiliser cette commande pour afficher une version d'un fichier d'il y a deux commits.
Espérons que ce didacticiel sur les commandes GIT a aidé à servir d'introduction à cet outil. En tant que développeur, plus vous en apprendrez sur GIT, mieux vous serez en mesure d'être embauché par une équipe à la recherche d'un programmeur fiable.
Au fur et à mesure que vous avancez dans ce domaine, vous apprendrez plus d'invites GIT et votre programmation deviendra beaucoup plus fluide. Vous pourrez écrire du code utilisable qui pourra être complété par vos coéquipiers.
Cet article est écrit par Slava Vaniukov. Il est co-fondateur et PDG de Softermii, agence de développement de logiciels et d'applications. Il a plus de 9 ans d'expérience dans l'industrie du développement Web et mobile. En plus de cela, il est l'un des auteurs du blog Softermii et du blogueur technologique présenté sur un large éventail d'autres ressources Web. Vous pouvez le suivre sur LinkedIn.