PHPCourse/GIT/git_commands.md

5.3 KiB

Introduction aux commandes GIT basics

Les commandes présentées ci-dessous peuvent avoir des paramètres et fonctionnalités supplémentaires qui sont disponibles sur la doc de git.

Si vous avez des problème avec une commande, il est interessant d'utiliser la commande git <command-name> --help en indiquant à la place de <command-name> le nom de la commande pour laquel vous souhaitez visualiser la documentation complète.

Légende

  • Hiqtorique (history) : Ensemble de tous les commits effectués.
  • Curseur (index/stage) : Ensemble de tous les fichiers qui ont été ajoutés avec git add ....
  • Projet (working directory) : Emplacement du .git ainsi que de tous les fichiers du projet.

Initialisation

Explications

Permet d'initialiser un nouveau repository git dans l'emplacement courant ou est exécuté la commande.

Commande
git init

Informations utilisateur

Explications

Permet de définir vos informations privées pour être identifié lors de commits locaux et distants. Le --global permet de modifier ces informations pour tous les repository sauf ceux ou vous avez changé vos informations localement. Le paramètre --list permet de visualiser la liste des options/config disponbibles.

Commande

git config --global user.name "your name"
git config --global user.email "your email adress"

git config --list

Visualiser le statut

Explications

Permet d'afficher les fichiers qui ont été ajoutés dans le repository locale, modifier, supprimer ainsi que ceux présent dans le curseur.

Commande
git status

Visualiser les différences

Explications

Permet d'afficher les modifications effectuées dans tous les fichiers et sous dossiers du repository git.

Commande
git diff

Ajoouter au curseur

Explications

Permet d'ajouter des éléments qui ont été modifiés du projet au curseur de modification dans le but d'effectuer un commit. <!> Après avoir ajouter un élément au curseur il est strictement interdit de le modifier <!>

L'option . et --all permettent d'ajouter tous les fichiers modifiés au curseur.

Commande

git add <file-name>...

git add --all
git add .

Supprimer du curseur

Explications

Lors que l'on a ajouter un élément au curseur par erreur et qu'on souhaite l'en retirer pour pouvoir à nouveau l'éditer ou pour le grader hors du prochain commit, il suffit d'utiliser restore avec le paramètre --stage qui indique "du curseur"

Commande

git restore --stage <file-name>...

Effectuer un commit

Explications

Le commit est l'action d'envoyer son curseur dans l'historique, il à comme prérequis la présence d'items dans le curseur et la définition d'un message de commit. Faire un commit revient à indexer une copie du projet dans l'historique git.

Commande

git commit -m "a simple description of changes"

Visualiser l'historique des commits

Explication

Historique complet de tous les commits git.

Commande

git log

Rétablir le projet au dernier commit

Explications

Supprime toue les modification des fichiers et dossiers et rétablit le dernier commit dans le répertoire de travail locale.

Commande

git reset --hard

Ajout d'un server git (GitHub, Gitea)

Explications

Permet d'ajouter un server git distant au projet git local sous le nom de origin. <!> Ne pas oublier de setup la branch local avec celle du server et de pull <!>

Commande

git remote add origin <remote-git-repository-adress>

Envoyer le(s) commit(s) sur le server

Explications

La commande pour setup une branche est la même que celle pour envoyer vos commits sur le server à la différence qu'elle prend plus de paramètres, voir la doc pour plus d'informations.

Dans l'example ci-dessous nous configuront la branche master, le mot origin indique que nous travaillons avec le server configuré précédement, cela permet de faire le lien lors de la configuration.

La configuration d'une branche est une opération qui ne ce réalise qu'une seul fois. Si votre branche est configuré utilisé simplement push pour envoyer vos modification.

<!> Attention pour pouvoir push il faut que votre code soit à jour avec celui des autres développeurs (ces pour cela que l'on utilise des branch) si ce n'est pas le cas utilisez pull avant de commit et de push <!>

Commande

git push

git push -u origin master

Télécharger la dernière version du code sur le server

Explications

Permet de télécharger sur votre ordinateur les dernières modification effectué sur le repository du server, ce pour vous tenir à jour. Il est très important de rester à jour lorsque l'on travail sur un projet avec plusieurs développeurs.

La commande pull va télécharger les dernières modification et les fusionner si possible avec votre code, attention si vous n'avez pas envoyé vos modification sur le server précédement cela peut dans certain cas poser problème.

Commande

git pull

Cloner un projet

Explications

Permet de télécharger un projet à vous ou pas, présent sur un server git du type (GitHub, Gitea...) et d'en faire une copie locale.

Commande

git clone <remote-git-repository-adress>