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

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 (ou . pour tout ajouter)
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

Nommez une série de commits et combinez les efforts accomplis

$ 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

Voilà en gros 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.

Enjoy !
A+!

Commentaires