Le répertoire .git expliqué
Dans cet article, nous allons présenter le dossier Git .git
. Nous expliquerons pourquoi Git crée le dossier et ce qu’il contient.
Qu’est-ce que le dossier .git
dans Git
Git est un système de contrôle de version largement utilisé. Un référentiel Git stocke les modifications que vous apportez à votre projet.
Le répertoire .git
stocke toutes les données de votre référentiel. Ce dossier peut stocker n’importe quoi, des informations sur les validations à l’adresse e-mail de votre référentiel.
Vous trouverez également un journal contenant votre historique de validation. Avec ce journal, vous pouvez restaurer la version de code souhaitée.
Lorsque vous exécutez la commande git init
pour initialiser un référentiel vide, Git crée le dossier .git
.
Vous pouvez afficher le dossier en exécutant la commande ci-dessous.
ls -C .git
Vous pouvez vous attendre à une sortie comme ci-dessous.
$ ls -C .git
COMMIT_EDITMSG HEAD config hooks/ info/ objects/ refs/
FETCH_HEAD ORIG_HEAD description index logs/ packed-refs
Explorons plus en détail le contenu de ce répertoire.
hooks/
- Le dossierhooks
stocke les fichiers de script. Git exécute ces fichiers de script lorsque vous exécutez des commandes telles quepush
etcommit
.objects/
- Ce dossier contient la base de données d’objets de Git.config
- Il s’agit du fichier de configuration de Git.refs/
- Ce dossier contient des données sur les branches et les balises.HEAD
- Ce fichier stocke des informations sur votre branche principale.index
- Ce fichier binaire contient les données de mise en scène.
Vous pouvez voir ce que contient la base de données d’objets en exécutant la commande ci-dessous.
ls -C .git/objects
Vous devriez obtenir une sortie comme celle ci-dessous.
$ ls -C .git/objects
03/ 24/ 30/ 77/ 87/ ac/ b6/ c6/ e1/ ec/ info/
19/ 29/ 4b/ 78/ 8b/ b1/ c3/ d4/ e6/ f6/ pack/
1f/ 2d/ 67/ 7b/ a6/ b2/ c4/ dd/ e9/ fa/
Vous pouvez interroger les objets de la base de données avec la commande ls -C .git/objects/<dir>
.
Explorons le fichier config
. Exécutez la commande cat .git/config
, comme indiqué ci-dessous.
pc@JOHN MINGW64 ~/Git (main)
$ cat .git/config
[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
[gui]
wmstate = normal
geometry = 893x435+208+208 175 196
[remote "origin"]
url = https://github.com/Wachira11ke/Delftscopetech.git
fetch = +refs/heads/*:refs/remotes/origin/*
Le fichier HEAD
référence par défaut votre branche master.
Le dossier .git
est toujours caché pour éviter tout dommage. Si vous supprimez le fichier, vous ne pouvez pas restaurer les modifications dans votre référentiel.
John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.
LinkedIn