C modules

Identification

Infoforall

Utiliser GIT


Cette page vous explique comment utiliser GIT correctement.

les bons conseils
...

1 - GIT présentation

les bons conseils
...
graph TD Dev1[Poste Dev 1] -->|push / pull| GitServer[(Serveur Git central)] Dev2[Poste Dev 2] -->|push / pull| GitServer Dev3[Poste Dev 3] -->|push / pull| GitServer Dev4[Poste Dev 4] -->|push / pull| GitServer
Principe général de GIT

Git est un système de gestion qui permet de suivre les modifications d’un projet lorsqu'on travaille à plusieurs.

C'est d'ailleurs surtout un gestionnaire de version : il permet de revenir à une version précédente si besoin, même si vous travaillez seul !

Git est un système libre (et gratuit) concu pour gérer n'importe quelle taille de projet de façon rapide et efficace.

Le principe général est de permettre à plusieurs personnes de travailler sur sa propre machine et d'envoyer son code et récupérer le code réalisé par les autres.

De nombreux services en ligne disponible :

  • gitea (facilement intégrable sur Always Data, exemple )
  • github
  • gitlab
Différentes étapes et mots de vocabulaire à comprendre

Voici quelques mots de vocabulaire et les étapes associées, à comprendre impérativement :

les bons conseils
Analogie des trois actions add commit push
  • Local repository (repo) : votre dossier local (sur votre ordinateur) contenant votre version du projet ET l'historique Git des modifications effectuées.
  • Working directory : les fichiers tels qu’ils sont sur votre ordinateur.
  • Staging area (index) (zone de préparation) : la commande git add permet de placer les modifications faites sur un fichier dans un "colis" de modifications. Chaque git add rajoute dans quelque chose dans votre paquet.
  • Commit (validation des modifs ajoutées) : une demande de fermeture du paquet de modification, avec un message explicatif si possible. On utilise la commande git commit. Attention, pour le moment, le colis est rempli et refermé mais pas encore envoyé !
  • Le principe est donc de placer à l'aide de plusieurs git add des modifications liées dans un seul git commit. Il est bien entendu possible de réaliser un commit pour chaque add, ou de placer dans un commit des modifications qui ne sont pas vraiment liées.

    1 2 3 4 5 6
    git add fichier1.txt git add fichier2.txt git commit -m "mise à jour 1 : modification de deux fichiers" git add fichier2.txt git commit -m "mise à jour 2 : petit oubli dans le fichier 2, c'est rectifié !"

    Attention : modifier le fichier2.txt ne suffit pas à prendre en compte ces modifications pour l'envoi : il faut refaire un add ! Sinon, vous envoyez uniquement les modifications effectuées lors du commit 1.

  • Distance repository (remote) : il s'agit du dépôt de votre projet sur un site hébergeant un serveur GIT. Maintenant que vous avez modifié votre projet sur votre ordinateur, il va falloir envoyer ces modifications vers le serveur en ligne. Cela se fait avec git push..
  • 1
    git push origin master

    Cette fois, vos modifications sont vraiment envoyées en ligne. Les autres utilisateurs du dépôt pourront voir vos modifications.

    Parfois master est nommé main.

2 - Installer GIT

Commencez par vérifier que vous ne possédez pas déjà GIT en lançant git --version sur votre poste.

Installer GIT

  • Sur windows : lien vers git-scm.com. Téléchargez l'installateur et utilisez le.
  • Sur linux : sudo apt install git, en remplaçant apt pour le nom du service de gestion des paquets de votre distribution. Bonne pratique : pensez à mettre à jour apt (ou équivalent) avant de lancer la commande d'ailleurs (sudo apt update et autres variantes).
  • Sur mac : brew install git

Une fois le programme installé, vérifiez qu'il est bien utilisable en lançant git --version.

Cela ne fonctionne pas !

Si cela ne fonctionne pas avec Windows, c'est que votre variable d'environnement Path ne contient pas l'adresse du répertoire qui contient l'exécutable git.exe/

Cherchez le répertoire où se trouve le fichier git.exe et modifiez votre Path pour y rajouter le chemin complet du répertoire.

Fermer votre console puis lancez git --version pour vérifier si cela a résolu le problème. Si cela ne fonctionne toujours pas, redémarrez le système. Si cela ne fonctionne toujours pas, il va falloir m'appeller../

Localiser un programme

which git vous permet sur un système compatible UNIX (Linux, MAC, console Powershell sur Windows) de voir où se trouve le binaire de git.

Sur Windows, vous pouvez aussi utiliser where.exe git.exe.

S'inscrire sur un service GIT en ligne

Aller sur le service qui vous intérresse et réaliser l'inscription de façon à avoir un alias et un mot de passe.

Si vous ne voulez pas vous inscrire sur une plateforme de type gitlab ou github, vous pouvez venir sur git.infoforall.fr mais il faudra me demander de valider avant de pouvoir utiliser votre compte.

Créer votre profil sur votre ordinateur

Ouvrir un terminal de façon à associer votre alias/nom et votre email à votre service git local à votre machine :

1 2
git config --global user.name "votre alias" git config --global user.email "votre@email.truc"

--global signale ici que ces informations pourront être utilisées sur tous les dépôts GIT sauf indications plus précises de votre part.

Il existe trois niveaux de définitions :

  • -system : dans ce cas, les identifiants sont donnés pour tous les utilisateurs.
  • --global : les identifiants sont donnés pour un utilisateur spécifique et tous ses dépôts.
  • --local : il faut avoir créer un dépôt précis avant de l'utiliser (partie suivante) et dans ce cas, les identifiants ne seront valables que pour ce dépôt spécifique. Elles remplacent donc celles que vous avez par défaut avec --global.

3 - Créer un nouveau projet

Cette partie vous explique comment créer un projet qui n'existe encore nul part.

  1. Se connecter sur le dépôt distant.
  2. Localiser le bouton permettant de créer un nouveau dépôt et deux solutions s'offrent à vous :
    • soit vous lui donner juste un nom et vous le laissez vide (et dans ce cas, il faudra poursuivre cette partie) : on vous explique comment faire le lien entre votre poste de travail et ce dépôt vide.
    • soit vous localiser la coche qui vous permet de l'initialiser avec un premier fichier (souvent README.md, un fichier texte markdown permettant d'écrire du contenu plus facilement qu'en HTML). Dans ce cas, il faudra partir voir la partie 4 de cette page : on vous explique comment faire le lien entre un dépôt distant non vide et votre psote de travail.

Si vous êtes ici, c'est que vous n'avez pas trouver la coche permettant d'initialiser automatiquement le dépôt.

Voici comment le faire manuellement :

  1. Récupérer l'URL de votre dépôt en ligne (elle est habituellement fournie sur la page Web de votre projet).
  2. Faire pointer un terminal sur le répertoire de votre PC qui va héberger le projet localement (soit avec la commande cd, soit en ouvrant manuellement la console au bon endroit avec un clic droit).
  3. Utiliser ces commandes pour créer le répertoire de votre projet avec mkdir, se déplacer dedans avec cd et en faire un dépôt GIT local avec git init.
  4. 1 2 3
    mkdir nom-de-mon-projet cd nom-de-mon-projet git init

    Cette dernière commande vient de dire à votre programme git de créer un nouveau dépôt local que git va surveiller désormais.

  5. Nous allons créer localement un petit fichier markdown vide nommé REAMDE.md qui à terme va contenir la description de votre projet :
  6. Sous Linux ou Mac :

    1
    touch README.md

    Sous Windows ? Désinstaller Windows, placer une distribution Linux ou alors utiliser simplement cette commande :

    1
    type nul > README.md
  7. Il n'y a plus qu'à rajouter le fichier à un paquet et finaliser le paquet avec un commit. D'ailleurs, on ne parlera plus de paquet mais juste de validation ou de commit :
  8. 1 2
    git add README.md git commit -m "first commit"
  9. Reste que pour le moment, il n'y a pas de lien entre votre dépôt git local et le dépôt git distant (qu'on nomme souvent origin. Nous allons y remédier maintenant. Cette opération n'est à réaliser qu'une seule fois puisque la liaison sera enregistrée.
  10. 1
    git remote add origin url-de-votre-projet-sur-le-git-distant

    L'URL ressemble par exemple à
    https://git.infoforall.fr/utilisateur/mon-projet.git ou
    https://github.com/utilisateur/mon-projet .git

    Traduction : on pousse/envoie les commits enregistrés vers le dépôt distant origin en envoyant la branche local master.

  11. Et voilà, c'est fini : votre commit est prêt et la liaison est fournie : il reste simplement à transmettre avec git push :
  12. 1
    git push origin master
  13. Presque fini : le système va vous demander votre alias/nom et votre mot de passe (pour le site distant). Attention : sur les systèmes Linux, rien n'apparaît lorsque vous tapez un mot de passe. C'est normal.
  14. Repartir voir votre dépôt distant : normalement, votre fichier README.md est maintenant présent.
  15. Bien entendu, si vous avez trouvé la case à cocher ou si quelqu'un a déjà initialisé le dépôt distant, tout va être bien moins long. Voir partie suivante.

4 - Se rattacher à un projet déjà initialisé

Pour cela, il suffit d'utiliser git clone qui :
  • va vous créer un nouveau répertoire (pas la peine de faire un mkdir) ;
  • va télécharger ce qui se trouve sur le dépôt distant (pas la peine de faire de pull) ;
  • va faire le lien entre votre nouvea dépôt local et le dépôt distant (pas la peine de faire git remote add).

La marche à suivre est donc simple :

  1. Ouvrir un terminal en le faisant pointer sur le répertoire qui va contenir le répertoire de votre dépôt GIT.
  2. Lancer git clone, donner vos identifiants si le projet distant n'est pas public (dans ce cas, il faudra avoir été déclaré contributeur). Fini.
  3. 1 2 3
    git clone url-du-projet.git ls cd nom-du-projet

Remarque : plutôt que de lister avec ls (qui fonctionne sous Unix ou avec le powershell de windows), le système windows utilise la commande dir.

Pour savoir si votre version est à jour, vous pouvez faire ceci :

1
git status

Une dernière chose à comprendre : le meme ci-dessous.

5 - Récupérer les modifications ultérieures

les bons conseils 2
...

Vous savez maintenant créer ou cloner un dépôt distant et envoyer des modifs avec git pull.

graph TD Dev1[Poste Dev 1] -->|push / pull| GitServer[(Serveur Git central)] Dev2[Poste Dev 2] -->|push / pull| GitServer Dev3[Poste Dev 3] -->|push / pull| GitServer Dev4[Poste Dev 4] -->|push / pull| GitServer

Pour récupérer les modifications que les autres développeuses/développeurs ont réalisé, il faut utiliser git pull :

1
git pull origin master

Traduction : on tire/récupère la branche master du sute distant origin.

En résumé, git pull permet donc de mettre à jour le dépôt local par rapport au contenu du dépôt distant.

Alors, pourquoi ce meme ? Car git pull récupère et vous transmet les modifications ET les applique. Même si les modifications font des choses étranges. Bref, aucune vérifications.

En réalité, l'action de git pull peut se décomposer manuellement en deux actions élémentaires :

  1. git fetch qui récupère les modifications depuis le dépôt distant mais ne les applique pas !
  2. Vous pouvez regarder ce que sont ces modifications avec git log origi/master.

  3. git merge origin/master qui réalise la fusion.

Les problèmes surviennent quand on finit par modifier les mêmes lignes de code. Cela va nécessiter de faire des choix anuellement, GIT ne peut pas choisir à votre place !

6 - Gestion des conflits

A faire

7 - Gestion des branches

A faire

8 - FAQ

A faire

Article publié le 26 03 2026
Dernière modification : 26 03 2026
Auteur : ows. h.