Quelques commandes utiles sous Git que chaque débutant doit connaitre

By Nasser

4 min read

Hello! Aujourd'hui je vais vous parler de Git.

Git est le système de contrôle de version distribué (ou simplement l'outil de collaboration) le plus célèbre et le plus performant jusque là.

Dans cet article je partage avec vous une liste (non exhaustive) de commandes Git utiles. Ces commandes ont été initialement posté sur twitter par eliaswalyba.

En effet, Elias est un Senior AI/ML consultant et CoFounder DopeLab and @GalsenAI.
Vous pouvez le retrouver sur Twitter, GitHub, LinkedIn et YouTube (il y publie des tutoriels)

Maintenant, passons aux choses sérieuses!

INSTALLER GIT

Pour installer Git, rendez vous sur le site https://git-scm.com/downloads. Télécharger la distribution correspondante à votre système et installer la.

Sur Ubuntu ouvrez votre terminal et tapez

$ sudo apt install git

et le tour est joué. Vous avez Git installé

Dans la suite de cet article, toutes les commandes que je vous présente s’exécutent sur un terminal (cmd pour Windows). Ce pendant il existe des outils graphique qui vous permettent de manipuler Git. Mais pour un début je ne vous les conseille pas.

PREMIÈRES CONFIGURATION

Configurer les informations utilisateur pour tous les référentiels locaux

$ git config --global user.name "Votre nom"

Définit le nom que vous voulez attacher à vos transactions de commit

$ git config --global user.email "Votre adresse email"

Définit l'email que vous voulez attacher à vos transactions de commit

$ git config --global color.ui auto

Active la colorisation utile de la sortie en ligne de commande

CRÉER DES DÉPÔTS

Démarrer un nouveau référentiel ou en obtenir un à partir d'une URL existante

$ git init nom_du_projet  

Crée un nouveau référentiel local avec le nom spécifié

$ git clone url

Télécharge un projet et l'historique de ses versions

FAIRE DES CHANGEMENTS

Vérifier les modifications et cré une transaction de validation  

$ git status # Répertorie tous les fichiers nouveaux ou modifiés à valider  

$ git add nom_du_fichier # Capture instantanée du fichier en préparation  

$ git reset [fichier] # Décompose le fichier mais conserve son contenu  

$ git diff # Affiche les différences de fichier non encore mises en scène  

$ git diff --staged # Affiche les différences de fichier entre le transfert et la dernière version du fichier  

$ git commit -m "Une petite description de votre commit" # Enregistre les fichier de manière permanente dans l'historique des versions  

REGROUPER DES CHANGEMENTS

$ git branch # Répertorie toutes les branches locales du référentiel actuel  

$ git branch nom-branche # Cré une nouvelle branche  

$ git checkout nom-branche # Bascule vers la branche spécifiée et met à jour le répertoire de travail  

$ git merge nom-branche # Combine l’historique de la branche spécifiée dans la branche actuelle  

$ git branch -d nom-branche  # Supprime la branche spécifiée  

MODIFICATIONS SUR LES FICHIERS

Déplacer et supprimer les fichiers versionnés


$ git rm nom_fichier # Supprime le fichier du répertoire de travail  

$ git rm --cached nom_fichier # Supprime le fichier du contrôle de version mais conserve le fichier localement  

$ git mv ancien_nom_fichier nouveau_nom_fichier  # Change le nom du fichier et le prépare pour le commit  

EXCLUSION DE FICHIER

Exclure les fichiers temporaires et les chemins

Pour exclure certains fichier (ne pas les traquer par Git)
Créez un fichier nommé .gitignore et mettez y tous les fichiers que vous voulez exclure.

$ git ls-files --other --ignored --exclude-standard  # Répertorie tous les fichiers exclu dans ce projet  

SAUVEGARDER DES FRAGMENTS DE FICHIERS

Doubler et restaurer les modifications incomplètes

$ git stash  # Stocke temporairement tous les fichiers suivis modifiés  

$ git stash list  # Répertorie tous les changements cachés  

$ git stash pop  # Restaure les derniers fichiers cachés  

$ git stash drop  # Ignore le plus récent jeu de modifications stocké 

VOIR L'HISTOIRE DE VOTRE PROJET

Parcourir et inspecter l'évolution des fichiers de projet

$ git log  # Répertorie l'historique des versions de la branche actuelle  

$ git log --follow nom_fichier  # Répertorie l'historique des versions d'un fichier, renommage compris  

$ git diff nom-branche-1 ... nom-branche-2  # Affiche les différences de contenu entre deux branches  

$ git show hash-du-commit  # Affiche les métadonnées et les modifications de contenu du commit spécifié 

REFAIRE DES COMMITS

Effacer les erreurs et l'historique des remplacements

$ git reset hash-du-commit  # Annule tous les commits après [hash-du-commit], en préservant les modifications localement. Le hash-du-commit est un identifiant unique octroyé à chaque commit. Par exemple 793e57778a8e33ee61044a8255ee3b37368596a7 est un hash-du-commit  

$ git reset --hard hash-du-commit  # Ignore tout l'historique et rétablit le commit spécifié  

SYNCHRONISER VOS CHANGEMENTS (SUR UN SERVEUR)

Enregistrer un signet de référentiel et échanger l'historique des versions

$ git fetch url  # Télécharge tout l'historique du signet du référentiel  

$ git push url nom-branche  # Télécharge tous les commits des branches vers un serveur  

$ git pull url nom-branche # Télécharge l'historique des signets et intègre les modifications

Voici donc quelque commandes de Git qu'Elias a publié sur son fil Twitter.

Après je ne retient pas toutes les commandes mais sur internet vous pouvez trouver plein de ressources pour apprendre à utiliser Git. C'est une technologie incontournable maintenant surtout dans le milieu professionnel et malheureusement on en parle jamais dans les universités / instituts de formations.