Skip to main content

Bien démarrer avec Git

Découvrez les bases de Git en travaillant sur un scénario type.

N’avez-vous jamais rĂȘvĂ© d’avoir une machine Ă  remonter le temps pour votre code ? Eh bien, grĂące Ă  Git, ce rĂȘve devient rĂ©alitĂ©, et bien plus encore !

Si vous ne connaissez pas encore Git, il s’agit d’un systĂšme de contrĂŽle de version qui vous aide Ă  suivre les modifications apportĂ©es Ă  votre code. Vous pouvez enregistrer un instantanĂ© de votre projet Ă  un moment prĂ©cis, puis effectuer des modifications expĂ©rimentales sans risquer de perdre votre travail, car vous pouvez toujours revenir Ă  votre instantanĂ©.

GitHub est une plateforme basĂ©e sur Git, qui vous permet d’enregistrer vos projets Git dans le cloud et de collaborer avec d’autres dĂ©veloppeurs.

MĂȘme si Git peut sembler compliquĂ©, il s’agit d’un outil puissant et indispensable pour tout dĂ©veloppeur. Cet article vous donnera tous les outils dont vous avez besoin pour utiliser Git dans votre flux de travail quotidien.

Prérequis

Pour suivre ce tutoriel, vous devez installer Visual Studio Code.

Découverte des bases de Git avec GitHub Desktop

Pour les opĂ©rations Git standard, nous recommandons GitHub Desktop, une application qui vous permet d’interagir avec Git visuellement au lieu de passer par des commandes Ă©crites. Dans cette section, nous allons apprendre Ă  utiliser GitHub Desktop pour effectuer rapidement les opĂ©rations Git les plus courantes.

Configuration de GitHub Desktop

Si vous utilisez GitHub Desktop pour la premiùre fois, vous devez l’installer et connecter votre compte GitHub.

  1. Téléchargez GitHub Desktop.
  2. Ouvrez GitHub Desktop, puis cliquez sur Se connecter à GitHub.com et autorisez GitHub Desktop à accéder à votre compte.
  3. De retour dans GitHub Desktop, cliquez sur Terminer. Votre nom et votre adresse e-mail de votre compte GitHub seront ainsi ajoutés à Git.

Créer un référentiel local

Vous pouvez maintenant faire vos premiers pas dans Git en crĂ©ant un rĂ©fĂ©rentiel. ConsidĂ©rez un rĂ©fĂ©rentiel comme un dossier de projet qui suit les modifications et stocke l’historique. Tout d’abord, nous allons crĂ©er un rĂ©fĂ©rentiel local :

  1. Dans GitHub Desktop, cliquez sur Créer un référentiel sur votre lecteur local.

  2. Nommez le référentiel learning-git.

  3. Sélectionnez Initialiser ce référentiel avec un fichier LISEZMOI pour créer automatiquement un fichier README.md vide.

    Conseil

    Il est courant d’inclure un fichier README.md, Ă©galement appelĂ© LISEZMOI, dans vos projets. Les fichiers LISEZMOI contiennent gĂ©nĂ©ralement des informations utiles pour comprendre, configurer et exĂ©cuter votre projet.

  4. Cliquez sur Créer un dépÎt.

CrĂ©ation d’un dĂ©pĂŽt distant

Le rĂ©fĂ©rentiel local que vous venez de crĂ©er se trouve sur votre ordinateur. CrĂ©ons maintenant un dĂ©pĂŽt distant pour le mĂȘme projet, qui sera hĂ©bergĂ© sur GitHub. La liaison Ă  un dĂ©pĂŽt distant facilite la collaboration et la sauvegarde de votre travail.

  1. Dans GitHub Desktop, cliquez sur Publier le référentiel.
  2. Dans la fenĂȘtre contextuelle qui apparaĂźt, cliquez une nouvelle fois sur Publier le rĂ©fĂ©rentiel.
  3. Pour afficher votre dépÎt distant, cliquez sur Afficher sur GitHub.

Configuration d’un espace pour apporter des modifications

Maintenant que vous avez créé un rĂ©fĂ©rentiel, parlons des branches. Les branches sont essentiellement des copies de votre projet oĂč vous pouvez tester des modifications sans compromettre la stabilitĂ© de votre travail existant.

Les rĂ©fĂ©rentiels sont automatiquement créés avec une branche main, que vous pouvez considĂ©rer comme la version stable et principale de votre projet. Par exemple, dans le rĂ©fĂ©rentiel d’un site web, la branche main correspond au site que les visiteurs peuvent voir.

Lorsque vous créez une nouvelle branche, vous créez un espace sécurisé pour travailler sur une nouvelle fonctionnalité sans affecter la version principale. Vous et vos collaborateurs pouvez utiliser différentes branches pour travailler simultanément sur plusieurs fonctionnalités.

CrĂ©ons une branche pour travailler sur les modifications de notre rĂ©fĂ©rentiel :

  1. Dans GitHub Desktop, sélectionnez le menu déroulant Branche actuelle, puis cliquez sur Nouvelle branche.
  2. Nommez votre nouvelle branche readme-updates, puis cliquez sur Créer une branche.

Enregistrement des instantanés de votre projet

Pour enregistrer votre progression dans votre branche, vous effectuez un commit. Un commit est un instantanĂ© que vous prenez de votre projet Ă  un moment prĂ©cis. En fait, vous avez dĂ©jĂ  effectuĂ© votre premier commit : lorsque vous avez initialisĂ© votre projet avec un fichier LISEZMOI, GitHub Desktop a automatiquement créé un commit initial pour ajouter le fichier README.md.

Chaque fois que vous terminez une partie du travail que vous souhaitez sauvegarder, vous devez effectuer un commit. AprÚs cela, vous pouvez toujours revenir à ce point précis, quel que soit le nombre de modifications que vous apporterez par la suite.

  1. Dans GitHub Desktop, cliquez sur Ouvrir dans Visual Studio Code.

  2. Dans VS Code, collez le texte suivant dans README.md et enregistrez vos modifications :

    Markdown
    Hello, World!
    
    This is a demo project for learning how to use Git.
    
  3. De retour dans GitHub Desktop, vous pourrez voir les modifications que vous venez d’apporter Ă  votre fichier LISEZMOI. En bas Ă  gauche, Ă  cĂŽtĂ© de votre photo de profil GitHub, tapez « Mettre Ă  jour le fichier LISEZMOI Â» dans la zone de texte. C’est ce qu’on appelle un message de commit, et il vous aide Ă  suivre les modifications que vous apportez Ă  chaque commit.

  4. Pour effectuer votre commit, cliquez sur Commiter les mises Ă  jour du fichier LISEZMOI..

Intégration de vos modifications dans votre branche primaire

Lorsque vous ĂȘtes satisfait des modifications que vous avez apportĂ©es Ă  une branche, vous pouvez publier votre branche dans le dĂ©pĂŽt distant et crĂ©er une demande de tirage (pull request). Les demandes de tirage (pull requests) vous permettent de passer en revue un ensemble de modifications proposĂ©es, puis de les fusionner d’une branche Ă  l’autre. Dans notre cas, nous allons crĂ©er une demande de tirage (pull request) qui intĂšgre les modifications que nous avons apportĂ©es dans readme-updates dans notre branche d’origine, main.

  1. Cliquez sur Publier la branche pour envoyer (push) la branche readme-updates avec vos modifications vers le dépÎt distant.

  2. Pour passer en revue vos modifications suggérées, cliquez sur Préversion de la demande de tirage (pull request).

  3. Cliquez sur Créer une demande de tirage.

  4. Dans la fenĂȘtre GitHub qui apparaĂźt, modifiez le titre de votre demande de tirage (pull request) par « Ajouter un message au fichier LISEZMOI Â», puis Ă©crivez une brĂšve description de vos modifications dans la zone de commentaire.

  5. Cliquez sur ** Créer une demande de tirage**.

  6. Pour intégrer vos modifications dans la branche main, en bas de la page, cliquez sur Fusionner la demande de tirage (pull request).

    Remarque

    Lorsque vous travaillez sur un projet avec d’autres dĂ©veloppeurs, il est courant qu’une autre personne passe en revue votre demande de tirage (pull request) avant qu’elle ne soit fusionnĂ©e.

  7. En bas de la page, cliquez sur Supprimer la branche. La suppression des branches fusionnées dans main contribue à la propreté et à la facilité de navigation de votre référentiel.

PrĂ©paration pour effectuer d’autres modifications

FĂ©licitations pour la fusion de votre premiĂšre demande de tirage (pull request) ! Maintenant que vous avez rĂ©ussi Ă  intĂ©grer vos modifications dans la branche main, vous devez suivre quelques Ă©tapes pour vous prĂ©parer Ă  votre prochaine sĂ©rie de modifications :

  1. Dans GitHub Desktop, si vous n'ĂȘtes pas sur la mainbranche, sĂ©lectionnez le menu dĂ©roulant Branche actuelle, puis cliquez sur principal.

    Vous devez presque toujours revenir à la branche main avant de créer une nouvelle branche, car les nouvelles branches sont créées sous forme de copies de la branche actuellement sélectionnée.

  2. Pour vĂ©rifier si des modifications ont Ă©tĂ© apportĂ©es Ă  votre branche distante main, cliquez sur RĂ©cupĂ©rer (fetch) l’origine.

  3. Enfin, pour mettre Ă  jour votre branche locale main avec les modifications apportĂ©es Ă  la branche distante main, cliquez sur Tirer (pull) l’origine.

Vous disposez maintenant de toutes les compĂ©tences nĂ©cessaires pour configurer et utiliser Git sur un projet !

Approfondissement de Git en ligne de commande

GitHub Desktop est conçu pour rĂ©pondre Ă  vos besoins Git quotidiens. Au fur et Ă  mesure de votre progression en tant que dĂ©veloppeur, vous serez probablement confrontĂ© Ă  des situations inhabituelles oĂč vous voudrez avoir plus de contrĂŽle sur une opĂ©ration Git ou aurez besoin d’utiliser des commandes plus complexes. Dans ces cas, vous devrez passer Ă  l’utilisation de commandes Git Ă©crites sur la ligne de commande.

Configuration de votre ligne de commande

Avant de commencer Ă  travailler avec la ligne de commande, vous devez configurer quelques outils.

  1. Dans GitHub Desktop, appuyez sur Ctrl+` pour ouvrir votre projet sur la ligne de commande.

  2. Si vous utilisez Windows, installez Git. Pour macOS et Linux, Git est installé par défaut.

  3. Installez GitHub CLI, qui vous permet d’effectuer rapidement des actions liĂ©es Ă  GitHub Ă  partir de la ligne de commande.

  4. Pour vous authentifier auprĂšs de GitHub Ă  partir de GitHub CLI, exĂ©cutez la commande suivante :

    Shell
    gh auth login
    

    Choisissez de vous authentifier avec GitHub.com, puis suivez les prompts Ă  l’écran.

  5. Installez GitHub Copilot dans l’interface de ligne de commande CLI, une extension puissante pour GitHub CLI qui vous aide Ă  trouver et Ă  comprendre les commandes, en exĂ©cutant la commande suivante :

    Shell
    gh extension install github/gh-copilot
    

Expérimentation de commandes complexes

Maintenant que vous avez tout configurĂ©, dĂ©couvrez comment trouver et comprendre les commandes dont vous pourriez avoir besoin Ă  l’avenir. Prenons l’exemple suivant : vous avez vu quelqu’un mentionner git blame en ligne, mais vous ne savez pas ce que cela fait. Essayez de demander Ă  Copilot de l’expliquer avec la commande suivante :

Shell
gh copilot explain "git blame"

Copilot indiquera que git blame fournit un historique dĂ©taillĂ© d’un fichier, prĂ©cisant l’auteur et le commit qui ont modifiĂ© en dernier chaque ligne du fichier. Faites-en l’expĂ©rience avec la commande suivante :

Shell
git blame README.md

C’est un outil formidable, mais comme vous pouvez l’imaginer, l’historique des modifications (blame) d’un fichier peut devenir trĂšs long. Supposons que seule la derniĂšre modification apportĂ©e Ă  une ligne spĂ©cifique d’un fichier vous intĂ©resse. Vous pouvez demander Ă  Copilot de gĂ©nĂ©rer la commande appropriĂ©e :

Shell
gh copilot suggest "Show me the blame for line 1 of README.md"

Lorsque Copilot demande quel type de commande vous recherchez, utilisez vos touches de direction pour choisir commande git, puis appuyez sur EntrĂ©e. Copilot suggĂ©rera alors la commande suivante :

Shell
git blame -L 1,1 README.md

Utilisez vos touches de direction pour choisir ExĂ©cuter la commande, puis appuyez sur EntrĂ©e. Vous verrez l’auteur et le commit de la derniĂšre ligne 1 modifiĂ©e de README.md.

Revue et étapes suivantes

Dans cet article, nous avons abordĂ© les bases de Git avec GitHub Desktop, en apprenant des termes importants comme :

  • RĂ©fĂ©rentiel : dossier qui enregistre toutes les modifications apportĂ©es aux fichiers de votre projet.
  • Commit : instantanĂ© de votre projet Ă  un moment prĂ©cis.
  • Branche : copie de votre projet sur laquelle vous pouvez travailler sur un ensemble de modifications.
  • Demande de tirage (pull request)  : une demande de fusion des modifications d’une branche vers une autre.

Nous avons Ă©galement parlĂ© de la rĂ©alisation d’opĂ©rations Git plus complexes sur la ligne de commande. Nous avons essayĂ© gh copilot explain et gh copilot suggest pour comprendre et trouver de nouvelles commandes et fonctionnalitĂ©s.

Maintenant, essayez d’appliquer ces connaissances Ă  votre propre travail. Ajoutez Git Ă  un projet existant avec GitHub Desktop en appuyant sur Ctrl+O (Windows/Linux) ou Commande+O (Mac) et dĂ©couvrez par vous-mĂȘme les avantages du contrĂŽle de version !