Retour
Cours et tutoriels pour apprendre à versionner vos projet et travailler en équipe en utilisant GIT.
Exemple: Commandes de bases, branches, Github
Git est un système de gestion de version distribué.
Cela signifie que contrairement à d'autres systèmes de gestion de version centralisés, tels que SVN, où toutes les versions du code sont stockées sur un serveur central, dans Git, chaque développeur a une copie complète de l'historique du code sur son propre ordinateur.
Cela permet à chacun de travailler sur son propre code sans avoir à se soucier de la disponibilité d'un serveur central.
Lorsqu'un développeur effectue un commit (enregistrement) de ses modifications dans Git, ces modifications sont synchronisées avec les autres copies du code pour tenir compte des contributions de chaque développeur.
Cela signifie que le code est toujours disponible, car chaque développeur a une copie complète de l'historique du code.
En outre, la gestion de version distribuée de Git offre une meilleure flexibilité et une plus grande sécurité, car les développeurs peuvent travailler indépendamment les uns des autres, ce qui réduit les risques de conflits.
De plus, la gestion de version distribuée permet également un travail en collaboration plus efficace, car les développeurs peuvent travailler sur des branches différentes et fusionner leurs modifications sans affecter les autres développeurs.
L'installation de Git dépend du système d'exploitation utilisé sur votre ordinateur. Voici les étapes pour installer Git sur les principaux systèmes d'exploitation :
Pour les distributions basées sur Debian, telles que Ubuntu et Linux Mint, vous pouvez installer Git en utilisant la commande suivante :
sudo apt-get install git
Pour les distributions basées sur Red Hat, telles que Fedora et CentOS, vous pouvez installer Git en utilisant la commande suivante :
sudo yum install git
Après l'installation de Git, vous pouvez vérifier la version installée en utilisant la commande suivante :
git --version
L'architecture de Git est conçue pour gérer les versions de fichiers de manière efficace.
Il utilise un système de références pour suivre les différentes versions d'un fichier et un système de hachage pour assurer la sécurité et l'intégrité des données.
Les références dans Git sont des pointeurs vers des commits spécifiques.
Chaque commit représente une version d'un ensemble de fichiers. Chaque commit a un identifiant unique, appelé hash, qui est généré à partir des données du commit.
Les références peuvent être utilisées pour accéder à des commits spécifiques et suivre l'historique des modifications.
Les branches dans Git sont également des références qui pointent vers des commits.
Elles permettent de suivre différentes versions d'un même projet et de travailler sur des modifications indépendantes sans affecter les autres développeurs.
Les branches peuvent être fusionnées pour inclure les modifications de plusieurs développeurs dans une seule version du code.
Les dépôts distants dans Git sont des références à des copies du code sur des ordinateurs distants.
Ils permettent aux développeurs de travailler sur le même code à partir de différents emplacements et de synchroniser leurs modifications.
La terminologie de base de Git est importante pour comprendre comment fonctionne ce système de gestion de version. Voici les termes clés à connaître :
Repository (ou dépôt) : un dépôt est un dossier contenant toutes les informations nécessaires pour suivre les modifications apportées à un ensemble de fichiers. Il peut être local (sur votre ordinateur) ou distant (sur un serveur en ligne).
Commit (ou validation) : un commit représente une version d'un ensemble de fichiers. Chaque commit contient un message décrivant les modifications apportées, ainsi que des informations sur le moment et l'auteur de la validation.
Branch (ou branche) : une branche est une série de commits formant une version spécifique du code. Les branches peuvent être utilisées pour travailler sur des modifications indépendantes sans affecter les autres développeurs.
Merge (ou fusion) : un merge est l'opération permettant de fusionner les modifications apportées sur une branche avec une autre branche.
Pull Request (ou demande de récupération) : une pull request est une demande envoyée à d'autres développeurs pour fusionner une branche avec une autre. Cela permet de revoir et de discuter les modifications avant de les intégrer au code principal.
Remote (ou dépôt distant) : un dépôt distant est une copie du code sur un serveur en ligne. Les développeurs peuvent travailler sur le même code à partir de différents emplacements et synchroniser leurs modifications en utilisant un dépôt distant.
Pour initialiser un dépôt Git, vous devez utiliser la commande:
git init
Cette commande crée un répertoire Git dans votre répertoire de travail et initialise les fichiers de configuration de Git.
L'architecture de Git comporte trois zones principales : le workdir
, la staging area
et le dépôt local
:
Le workdir
est le répertoire où se trouvent les fichiers que vous avez téléchargés sur votre ordinateur. Les modifications apportées aux fichiers dans le workdir
ne sont pas encore enregistrées dans le dépôt Git.
La staging area
est une zone intermédiaire où les modifications apportées aux fichiers dans le workdir
peuvent être préparées pour être enregistrées dans le dépôt Git. La commande git add
ajoute les fichiers modifiés à la staging area
, ce qui signifie qu'ils seront inclus dans le prochain commit.
Le dépôt local
est la copie de travail complète de votre dépôt Git sur votre ordinateur. Les commits effectués avec la commande git commit
sont enregistrés dans le dépôt local
.
Pour ajouter des fichiers à un dépôt Git, vous devez utiliser la commande git add
. Cette commande permet de suivre les fichiers dans Git et de les préparer pour le commit.
git add nom_du_fichier
Pour enlever des fichiers à un dépôt Git, vous pouvez utiliser la commande git reset
. Cette commande permet de de supprimer des fichiers depuis la staging area
.
git reset nom_du_fichier
Une fois que vous avez ajouté des fichiers à Git, vous pouvez les enregistrer en faisant un commit.
La commande git commit
permet de faire un commit et d'ajouter un message de commit qui décrit les modifications apportées aux fichiers.
git commit -m "Message de commit"
Cette commande affiche des informations sur les fichiers qui ont été modifiés, ajoutés ou supprimés par rapport à la dernière version enregistrée dans le dépôt.
git status
Cette commande affichera tous les commits du dépôt, avec leur hash, la date, l'auteur et la description.
git log
Vous pouvez également utiliser des options pour afficher plus ou moins d'informations.
Par exemple, pour afficher uniquement le hash et la description des commits, vous pouvez utiliser l'option --pretty=oneline
:
git log --pretty=oneline
Il est également possible de filtrer les résultats pour afficher uniquement les commits pertinents.
Par exemple, pour afficher les commits de la dernière semaine, vous pouvez utiliser l'option --since
:
git log --since='1 week ago'
Cette commande affiche les modifications apportées aux fichiers entre les différents commits.
git diff nom_du_commit_1 nom_du_commit_2
Les noms du commits sont les références obtenues lors de l'execution de la commande git log
.
En conclusion, Git est un outil puissant pour la gestion de version et les commits sont la pierre angulaire de ce système.
La compréhension de la navigation et du déplacement entre les commits est cruciale pour travailler efficacement avec Git.
Pas encore membre? Inscrivez vous!
OU