Dans Git, le fichier .gitignore est un outil essentiel qui vous aide à gérer quels fichiers et répertoires sont inclus dans votre dépôt de contrôle de versions. En utilisant .gitignore, les développeurs peuvent empêcher le suivi de fichiers inutiles, tels que les fichiers journaux, les dépendances ou les fichiers spécifiques au système. Ce guide vous explique comment créer et utiliser un fichier .gitignore efficacement.
Le fichier .gitignore indique à Git quels fichiers ou répertoires doivent être ignorés dans un projet. Il permet aux développeurs d’exclure les fichiers qui ne sont pas nécessaires au projet, contribuant ainsi à un historique de versions plus clair et plus efficace.
Éviter l’encombrement : empêche les fichiers volumineux ou inutiles de surcharger votre dépôt.
Confidentialité : garde hors du contrôle de versions les informations sensibles comme les clés API, identifiants ou fichiers de configuration.
Efficacité : facilite la collaboration en garantissant que seuls les fichiers essentiels sont suivis et partagés.
Créer un fichier .gitignore est simple.
1. Accédez à votre dépôt Git.
Ouvrez votre terminal et accédez au répertoire racine de votre projet Git.
cd /path/to/your/git/project
2. Créez le fichier .gitignore.
Vous pouvez créer le fichier avec la commande suivante :
touch .gitignore
3. Ouvrez et modifiez le fichier .gitignore.
Ouvrez le fichier .gitignore dans votre éditeur de texte et ajoutez les fichiers ou répertoires que Git doit ignorer. Par exemple :
# Ignorer le dossier node_modules
node_modules/
# Ignorer les fichiers journaux
*.log
# Ignorer les fichiers .env
.env
4. Enregistrez et validez les modifications.
Après modification, enregistrez le fichier .gitignore et validez les changements dans Git.
git add .gitignore
git commit -m "Add .gitignore"
Il existe plusieurs modèles couramment utilisés dans les fichiers .gitignore pour indiquer les fichiers ou répertoires à exclure. Voici quelques exemples fréquents.
Ignorer les fichiers par extension :
*.log # Ignorer tous les fichiers journaux
*.tmp # Ignorer tous les fichiers temporaires
*.swp # Ignorer les fichiers swap créés par des éditeurs de texte
Ignorer des répertoires spécifiques :
/logs/ # Ignorer le répertoire logs
/temp/ # Ignorer le répertoire temp
Ignorer les fichiers cachés :
.* # Ignorer tous les fichiers cachés commençant par un point (ex. : .DS_Store)
Ignorer des fichiers dans un dossier spécifique :
/docs/*.pdf # Ignorer tous les fichiers PDF dans le dossier docs
Annuler un modèle (inclure des fichiers précédemment exclus) :
*.pdf # Ignorer tous les fichiers PDF
!resume.pdf # Ne pas ignorer resume.pdf
Bien que .gitignore soit généralement créé à la racine de votre dépôt, vous pouvez également configurer Git pour ignorer des fichiers globalement, ce qui s’applique à tous les dépôts de votre machine.
Si vous souhaitez exclure des fichiers uniquement dans votre dépôt actuel, modifiez simplement le fichier .gitignore de ce projet. Cela garantit que l’exclusion ne s’applique qu’à ce dépôt.
Pour créer un fichier .gitignore global, valable pour tous vos dépôts, suivez ces étapes :
1. Créez un fichier .gitignore global :
touch ~/.gitignore_global
2. Ajoutez des modèles au fichier .gitignore global :
Modifiez le fichier et ajoutez les modèles des fichiers que vous souhaitez ignorer globalement. Par exemple :
*.log
*.tmp
.DS_Store
3. Configurez Git pour utiliser le fichier .gitignore global :
git config --global core.excludesfile ~/.gitignore_global
Pour tirer le meilleur parti de .gitignore, suivez ces bonnes pratiques :
Créez un fichier .gitignore dès le début du projet afin d’éviter de suivre des fichiers inutiles.
Organisez votre fichier .gitignore en regroupant les modèles similaires et en ajoutant des commentaires. Par exemple :
# Fichiers générés par le système
.DS_Store
Thumbs.db
# Dépendances Node.js
node_modules/
Utilisez .gitignore pour empêcher que des fichiers privés comme des clés API ou des paramètres de configuration ne soient ajoutés accidentellement au contrôle de versions.
Utilisez git status pour vérifier si votre fichier .gitignore exclut correctement les fichiers. Si un fichier continue d’être suivi, il est possible qu’il ait été ajouté avant d’être ignoré.
Il arrive parfois que des fichiers censés être ignorés soient toujours suivis. Voici quelques raisons courantes et leurs solutions.
Si un fichier a été ajouté au dépôt avant d’être ajouté à .gitignore, Git continuera de le suivre. Pour arrêter son suivi :
1. Supprimez le fichier de Git sans le supprimer localement :
git rm --cached filename
2. Ajoutez le fichier à .gitignore.
3. Validez le fichier .gitignore mis à jour ainsi que la suppression du fichier en cache :
git commit -m "Update .gitignore and remove cached files"
Git est sensible à la casse. Assurez-vous donc que les modèles de votre .gitignore correspondent exactement à la casse des noms de fichiers.
Par exemple :
file.txt # Ignore file.txt mais pas File.txt
Pour vérifier si un fichier est correctement ignoré, vous pouvez utiliser la commande git check-ignore :
git check-ignore -v filename
Cette commande affiche la règle responsable de l’ignorance du fichier.
En utilisant efficacement .gitignore, vous pouvez contrôler quels fichiers sont inclus dans votre dépôt Git et vous assurer que seuls les fichiers essentiels sont suivis. Suivez les étapes de ce guide pour créer, personnaliser et dépanner votre fichier .gitignore afin de maintenir une gestion de versions efficace.