Une introduction à Git: qu'est-ce que c'est et comment l'utiliser

Git est un système de contrôle de version distribué Open Source . Voilà beaucoup de mots pour définir Git.

Permettez-moi de le décomposer et d'expliquer le libellé:

  • Système de contrôle: cela signifie essentiellement que Git est un suivi de contenu. Ainsi, Git peut être utilisé pour stocker du contenu - il est principalement utilisé pour stocker du code en raison des autres fonctionnalités qu'il fournit.
  • Système de contrôle de version : le code stocké dans Git ne cesse de changer à mesure que du code est ajouté. De plus, de nombreux développeurs peuvent ajouter du code en parallèle. Ainsi, le système de contrôle de version aide à gérer cela en conservant un historique des changements survenus. De plus, Git fournit des fonctionnalités telles que les branches et les fusions, que je couvrirai plus tard.
  • Système de contrôle de version distribué : Git a un référentiel distant qui est stocké dans un serveur et un référentiel local qui est stocké dans l'ordinateur de chaque développeur. Cela signifie que le code n'est pas seulement stocké dans un serveur central, mais que la copie complète du code est présente sur tous les ordinateurs des développeurs. Git est un système de contrôle de version distribué puisque le code est présent dans l'ordinateur de chaque développeur. J'expliquerai le concept de référentiels distants et locaux plus loin dans cet article.

Pourquoi un système de contrôle de version comme Git est nécessaire

Les projets réels ont généralement plusieurs développeurs travaillant en parallèle. Un système de contrôle de version comme Git est donc nécessaire pour s'assurer qu'il n'y a pas de conflit de code entre les développeurs.

De plus, les exigences de ces projets changent souvent. Ainsi, un système de contrôle de version permet aux développeurs de revenir à une ancienne version du code.

Enfin, il arrive que plusieurs projets exécutés en parallèle impliquent la même base de code. Dans un tel cas, le concept de branchement dans Git est très important.

Commençons à utiliser Git maintenant

Plutôt que de mentionner tous les concepts à la fois, j'expliquerai les concepts de Git à travers un exemple afin qu'il soit plus facile à suivre.

Télécharger git

Ce lien contient des détails sur l'installation de Git dans plusieurs systèmes d'exploitation:

//git-scm.com/book/en/v2/Getting-Started-Installing-Git

Vérifiez si Git est installé à l'aide de la commande suivante dans l'invite de commande:

git --version

Créez votre référentiel Git local

Sur votre ordinateur, créez un dossier pour votre projet. Appelons le dossier du projet simple-git-demo.

Accédez au dossier de votre projet et ajoutez un référentiel Git local au projet à l'aide des commandes suivantes:

cd simple-git-demo git init

La git initcommande ajoute un référentiel Git local au projet.

Ajoutons un petit code maintenant

Créez un fichier appelé demo.txtdans le dossier du projet et ajoutez-y le texte suivant:

Initial Content

Ici, nous allons faire une démonstration avec du texte brut au lieu du code réel, car l'objectif principal de cet article est sur Git et non sur un langage de programmation spécifique.

Mise en scène et validation du code

La validation est le processus dans lequel le code est ajouté au référentiel local . Avant de valider le code, il doit se trouver dans la zone de préparation . La zone de préparation est là pour garder une trace de tous les fichiers qui doivent être validés.

Tout fichier qui n'est pas ajouté à la zone intermédiaire ne sera pas validé. Cela donne au développeur le contrôle sur les fichiers à valider.

Mise en scène

Utilisez la commande suivante pour préparer le fichier:

git add demo.txt

Si vous souhaitez ajouter plusieurs fichiers, vous pouvez utiliser:

git add file1 file2 file3

Si vous souhaitez ajouter tous les fichiers de votre dossier de projet à la zone de préparation, utilisez la commande suivante:

git add .

Utilisez-le avec précaution car il ajoute tous les fichiers et dossiers de votre projet à la zone de préparation.

S'engager

Utilisez la commande suivante pour valider le fichier:

git commit -m "Initial Commit"

«Initial Commit» est le message de validation ici. Entrez un message de validation pertinent pour indiquer les modifications de code effectuées dans cette validation particulière.

Statut Git et journal Git

Modifiez maintenant le demo.txtfichier et ajoutez l'extrait suivant:

Initial Content Adding more Content

Statut

Utilisez git statuspour trouver des informations sur les fichiers modifiés et les fichiers qui se trouvent dans la zone de préparation - il affiche également d'autres informations, que nous pouvons ignorer pour le moment.

Utilisez la commande suivante pour voir l'état:

git status

L'état indique qu'il demo.txtest modifié et n'est pas encore dans la zone de transit.

Maintenant, ajoutons demo.txtà la zone de préparation et validons-la à l'aide des commandes suivantes:

git add demo.txt git commit -m "demo.txt file is modified"

Journal

Utilisez git logpour imprimer tous les commits qui ont été effectués jusqu'à présent.

La commande utilisée pour cela est:

git log

Le journal affiche l'auteur de chaque validation, la date de la validation et le message de validation.

Branches

Jusqu'à présent, nous n'avons créé aucune branche dans Git. Par défaut, les commits Git vont dans la branche master .

Qu'est-ce qu'une succursale?

Une branche n'est rien d'autre qu'un pointeur vers le dernier commit dans le référentiel Git. Donc, actuellement, notre branche principale est un pointeur vers le deuxième commit “demo.txt file is modified”.

Pourquoi plusieurs succursales sont-elles nécessaires?

Plusieurs branches sont nécessaires pour prendre en charge plusieurs développements parallèles. Reportez-vous à l'image ci-dessous pour voir comment fonctionnent les branches.

Initialement, la validation 1 et la validation 2 ont été effectuées dans la branche maître. Après la validation 2, une nouvelle branche appelée «Test» est créée, et la validation 3 et la validation 4 sont ajoutées à la branche de test.

En même temps, un commit 3 et un commit 4 différents sont ajoutés à la branche master. Ici, nous pouvons voir qu'après Commit 2, deux développements parallèles sont en cours dans 2 branches distinctes.

La branche de test et la branche principale ont divergé ici et ont un code différent - le code de la branche de test peut être fusionné avec la branche principale en utilisant git merge. Cela sera couvert plus tard.

Créer une nouvelle succursale en local

Créez une nouvelle branche appelée test à l'aide de la commande suivante:

git branch test

Cette commande crée la testbranche.

Nous sommes toujours dans le contexte de la branche master. Afin de passer à la test succursale. utilisez la commande suivante:

git checkout test

Maintenant, nous sommes dans la testbranche.

Vous pouvez lister toutes les branches en local à l'aide de la commande suivante:

git branch

Effectuez des validations dans la nouvelle branche

Modifiez demo.txten ajoutant l'extrait de code suivant:

Initial Content Adding more Content Adding some Content from test Branch

Maintenant, mettez en scène et validez à l'aide des commandes suivantes:

git add demo.txt git commit -m "Test Branch Commit"

Cette validation a été effectuée dans la branche de test, et maintenant la branche de test est en avance sur la branche principale par 1 validation - car la branche de test inclut également les 2 validations de la branche principale.

Vous pouvez vérifier l'historique des validations dans Test Branch en utilisant:

git log

Fusion

Actuellement, Test Branch est en avance sur le Master par 1 commit. Disons que nous voulons maintenant que tout le code de la branche de test soit ramené à la branche principale. C'est là que git mergec'est très utile.

Afin de fusionner le code de la branche de test dans la branche principale, procédez comme suit:

Revenez d'abord à la branche master:

git checkout master

Ensuite, exécutez la mergecommande:

git merge test

Après avoir exécuté ces 2 commandes, la fusion devrait réussir. Dans cet exemple, il n'y a pas de conflits.

Mais dans de vrais projets, il y aura des conflits lorsqu'une fusion est en cours. La résolution du conflit est quelque chose qui vient avec l'expérience, donc en travaillant davantage avec Git, vous serez en mesure de vous familiariser avec la résolution des conflits.

Courir git logmaintenant et vous remarquerez que le maître a également 3 commits.

Le référentiel Git distant

Jusqu'à présent, nous travaillions uniquement dans le référentiel local. Chaque développeur travaillera dans son référentiel local mais finalement, il poussera le code dans un référentiel distant. Une fois le code dans le référentiel distant, les autres développeurs peuvent voir et modifier ce code.

GitHub

Ici, nous utiliserons GitHub pour le référentiel distant.

Allez sur //github.com/ et créez un compte.

Après vous être enregistré sur la page d'accueil de GitHub, cliquez sur Démarrer un projet pour créer un nouveau référentiel Git. Donnez un nom au référentiel et cliquez sur «Créer un référentiel»

Donnez le nom comme git-blog-demo.

Cela créera un référentiel distant dans GitHub, et lorsque vous ouvrez le référentiel, une page comme l'image ci-dessous s'ouvrira:

L'URL du référentiel est la partie en surbrillance //github.com/aditya-sridhar/git-blog-demo.git

Afin de pointer votre référentiel local vers le référentiel distant, utilisez la commande suivante:

git remote add origin [repository url]

Git Push

Afin de pousser tout le code du référentiel local dans le référentiel distant, utilisez la commande suivante:

git push -u origin master

Cela pousse le code de la branche maître du référentiel local vers la branche maître du référentiel distant.

Commandes supplémentaires

Git Pull

git pullest utilisé pour extraire les dernières modifications du référentiel distant vers le référentiel local. Le code du référentiel distant est mis à jour en permanence par divers développeurs, il git pull est donc nécessaire:

git pull origin master

Clone Git

git cloneest utilisé pour cloner un référentiel distant existant sur votre ordinateur. La commande pour cela est:

git clone [repository url]

félicitations

Maintenant que vous connaissez les bases de l'utilisation de Git, allez-y et explorez plus!

Je publierai bientôt un autre article sur des concepts légèrement plus avancés de Git. Restez à l'écoute!

A propos de l'auteur

J'adore la technologie et je suis les progrès technologiques. J'aime aussi aider les autres avec toutes les connaissances que j'ai dans l'espace technologique.

N'hésitez pas à me contacter sur mon compte LinkdIn //www.linkedin.com/in/aditya1811/

Vous pouvez également me suivre sur twitter //twitter.com/adityasridhar18

Mon site Web: //adityasridhar.com/

Autres messages de moi

Comment utiliser efficacement Git