Guide sur les commandes et l’utilisation essentielles de Git

Ligne de commande essentielles et utilisation de Git Installer Windows, Ubuntu Debian

Git est un système de contrôle de version distribué qui permet aux équipes de développeurs de collaborer efficacement sur le code. Avec Git, vous pouvez suivre les modifications apportées à votre projet au fil du temps, collaborer facilement avec d’autres et fusionner les modifications de code de plusieurs développeurs.

En tant que débutant, il est important d’apprendre quelques commandes Git essentielles et workflows pour commencer à utiliser efficacement le contrôle de version. Ce guide vous guidera étape par étape à travers les commandes Git de base et les processus pour vous aider à démarrer avec Git et le contrôle de version.

Configuration de Git

Pour commencer à utiliser Git, vous devez d’abord l’installer sur votre ordinateur. Voici comment vous configurer :

Installer Git

  • Sur Linux/Unix : Git est généralement préinstallé avec la plupart des distributions Linux. Pour confirmer, ouvrez un terminal et tapez git --version pour vérifier si Git est installé. Sinon, utilisez le gestionnaire de paquets de votre distribution pour l’installer (par exemple apt-get install git sur Ubuntu/Debian).
  • Sur Mac : Installez Git via Homebrew avec brew install git, ou téléchargez le programme d’installation depuis git-scm.com.
  • Sur Windows : Téléchargez et exécutez le programme d’installation Git depuis git-scm.com. Sélectionnez vos options pendant le processus d’installation.

Configurer Git

Une fois Git installé, vous devez configurer votre nom et votre e-mail pour identifier vos commits :

$ git config --global user.name "Votre Nom"
$ git config --global user.email "[email protected]"

Cela lie votre activité Git à votre identité. Le flag --global définit ce nom d’utilisateur/email pour tous les dépôts Git sur votre système.

Générer des clés SSH (facultatif)

Si vous prévoyez de vous connecter à des dépôts Git distants via SSH, vous devez générer des clés SSH. Cela vous permet de push sur des dépôts sans avoir à entrer votre mot de passe à chaque fois.

Pour générer des clés :

$ ssh-keygen -t rsa -b 4096 -C "[email protected]"

Cela créera une paire de clés SSH publique et privée. Vous pouvez ensuite ajouter votre clé publique à des services comme GitHub pour vous connecter en SSH.

Vous êtes maintenant prêt à commencer à utiliser Git ! Passons en revue quelques concepts et commandes de base.

Concepts Git

Avant d’apprendre les commandes Git, il est important de comprendre quelques concepts clés dans Git :

  • Dépôt : Un dépôt (ou repo) contient l’ensemble complet des fichiers et dossiers associés à un projet, ainsi que l’historique de révision de chaque fichier.
  • Commit : Un commit est une capture instantanée de votre dépôt à un moment précis. Les commits capturent les modifications que vous apportez au code.
  • Branche : Une branche représente une ligne de développement indépendante. Par défaut, chaque dépôt a une branche principale (généralement appelée master) qui sert de branche de référence.
  • Fusion : Une fusion combine les modifications d’une branche dans une autre, par exemple la fusion de modifications de branche de fonctionnalités dans la branche principale.
  • Remote : Un dépôt distant est hébergé sur Internet ou sur un réseau. Il permet aux collaborateurs d’envoyer et de récupérer des modifications.
  • Clone : Le clonage télécharge un dépôt distant sur votre machine locale afin que vous puissiez y travailler.

Ces concepts permettent de puissants flux de travail collaboratifs dans Git. Gardez-les à l’esprit lorsque nous passerons en revue les commandes essentielles.

Commandes Git

Passons maintenant aux commandes Git de base et aux flux de travail que vous utiliserez quotidiennement dans le développement.

git init

Initialise un nouveau dépôt Git dans le répertoire courant. Cela transforme un répertoire ordinaire en projet Git où vous pouvez commencer à suivre les modifications.

$ git init

git status

Vérifie l’état du dépôt et affiche les fichiers non suivis, modifiés, indexés, etc. Commande extrêmement utile.

$ git status

git add

Ajoute les modifications de fichiers dans votre répertoire de travail à la zone de staging pour être incluses dans le prochain commit. Appelez git add sur des fichiers ou répertoires spécifiques comme :

$ git add file.txt
$ git add folder/

Pour ajouter tous les fichiers modifiés, utilisez :

$ git add . 

git commit

Valide l’instantané mis en stage dans l’historique du projet. Les instantanés validés peuvent être considérés comme des « points de sauvegarde » auxquels vous pouvez revenir ultérieurement.

Rédigez toujours un message de commit descriptif :

$ git commit -m "Votre message de commit descriptif" 

git log

Affiche l’historique des commits avec le nom de l’auteur, la date et le message de commit. Utile pour afficher l’historique du projet et trouver d’anciens commits :

$ git log

git checkout

Checkout permet de basculer entre les branches dans un dépôt. Pour commencer à travailler sur une nouvelle branche :

$ git checkout -b nom-branche

Pour passer à une branche existante :

$ git checkout nom-branche

Et pour revenir à la branche principale :

$ git checkout main

git merge

Fusionne les modifications d’une branche dans votre branche courante (par exemple, fusionner les modifications de fonctionnalités dans la branche principale).

$ git merge branche-a-fusionner

Cela effectue la fusion. Git fusionnera automatiquement les modifications s’il n’y a pas de conflits majeurs entre les branches.

git remote

Gère les connexions aux dépôts distants. Vous devrez ajouter un dépôt distant pour pousser votre dépôt vers un service hébergé comme GitHub :

$ git remote add origin https://github.com/user/repo.git

Vérifiez vos connexions distantes en utilisant :

$ git remote -v

git push

Pousse les commits locaux vers le dépôt distant spécifié. Par exemple :

$ git push origin main

Cela pousse votre branche principale locale vers la branche principale du dépôt distant origin.

git pull

Récupère les modifications d’un dépôt distant vers votre dépôt local. Récupère d’abord les modifications depuis le dépôt distant, puis les fusionne dans votre branche locale :

$ git pull origin main

git clone

Clone un dépôt distant pour créer une copie de travail locale. Par exemple :

$ git clone https://github.com/user/repo.git

Cela télécharge le dépôt distant sur votre machine afin que vous puissiez y travailler localement.

Ce sont les commandes Git clés et les flux de travail pour commencer avec le contrôle de version. Quelques autres commandes utiles incluent :

  • git diff pour afficher les différences entre les commits, les branches, le répertoire de travail vs dépôt, etc.
  • git reset pour annuler les modifications locales et restaurer l’état du dépôt
  • git rebase pour rebaser vos commits sur une autre branche

Et bien d’autres ! La documentation Git fournit une référence détaillée pour les commandes avancées.

Voyons maintenant un exemple simple de workflow collaboratif Git…

Exemple de workflow collaboratif Git

Voici un exemple de workflow pour développer collaborativement un projet avec un dépôt Git distant et plusieurs contributeurs :

  1. Initialiser Git dans un nouveau dossier de projet :
$ git init
  1. Créer le dépôt distant sur GitHub
  2. Connecter le dépôt local au dépôt distant :
$ git remote add origin https://github.com/user/repo.git
  1. Créer une nouvelle branche de fonctionnalités localement :
$ git checkout -b nouvelle-fonctionnalite
  1. Apporter des modifications, les indexer et valider localement :
$ git add .
$ git commit -m "Ajout d'une nouvelle fonctionnalité"
  1. Récupérer les dernières modifications distantes :
$ git fetch
  1. Fusionner la branche principale distante dans votre branche de fonctionnalités :
$ git merge origin/main
  1. Pousser la branche de fonctionnalité vers le dépôt distant :
$ git push origin nouvelle-fonctionnalite 
  1. Sur GitHub, créer une pull request pour fusionner nouvelle-fonctionnalite dans main
  2. Vérifier le code, approuver et fusionner la pull request sur GitHub
  3. Récupérer main distant dans le dépôt local :
$ git pull origin main
  1. Passer sur la branche principale localement :
$ git checkout main

Les modifications de votre collègue sont maintenant récupérées dans votre branche principale locale.

Cela montre un workflow collaboratif complet :

  • Création d’une branche de fonctionnalités localement
  • Pousser vers le dépôt distant
  • Créer une PR pour fusionner dans la branche principale
  • Récupérer la dernière branche principale dans le dépôt local

En tirant parti des branches, des commits, des fusions et des dépôts distants, vous pouvez collaborer efficacement sur le code !

Conclusion

Ce sont les commandes Git clés et les flux de travail pour vous permettre de démarrer avec le contrôle de version pour vos projets et votre code. Voici quelques conseils supplémentaires :

  • Validez régulièrement avec des messages descriptifs
  • Gardez votre branche principale stable en travaillant sur les fonctionnalités dans des branches dédiées
  • Synchronisez souvent votre dépôt local avec le dépôt distant pour récupérer les dernières modifications
  • Tirez parti des pull requests / merge requests pour les revues par les pairs
  • Utilisez git log et git diff pour inspecter les modifications

Git permet une collaboration puissante et un contrôle de version pour les projets. Apprendre ses commandes de base vous permet de gérer rapidement le code avec Git. La documentation Git fournit plus de détails sur les workflows avancés.

Avec ces bases, vous avez maintenant les outils clés pour commencer à contrôler la version de votre code !

Laisser un commentaire