Qu'est-ce qu'un fichier .gitignore ?
Un fichier .gitignore est un fichier texte placé à la racine de votre dépôt Git. Il spécifie les fichiers et répertoires intentionnellement non suivis que Git doit ignorer, évitant ainsi de versionner les artefacts de compilation, les secrets locaux, les dossiers de dépendances et les fichiers temporaires.
Où doit-on placer le fichier .gitignore ?
Placez votre fichier .gitignore dans le répertoire racine de votre projet (par exemple, /mon-projet/.gitignore). À la racine, ses règles s'appliquent de manière récursive à tous les sous-dossiers. Vous pouvez également placer des fichiers .gitignore supplémentaires dans des sous-répertoires si des règles spécifiques s'y appliquent.
Peut-on combiner plusieurs modèles de .gitignore ?
Oui. Les projets actuels combinent presque toujours plusieurs technologies (par exemple, Python + React + Docker + macOS + VS Code). DotGitIgnore vous permet de sélectionner autant de modèles que nécessaire, en éliminant automatiquement les doublons dans un fichier unique et propre.
Comment ignorer un dossier complet dans Git ?
Pour ignorer un dossier et l'ensemble de son contenu, ajoutez une barre oblique finale à son nom dans votre .gitignore (par exemple, node_modules/ ou build/). Sans barre oblique, le motif correspond aux fichiers et aux dossiers portant ce nom, alors que la barre oblique restreint la règle aux répertoires.
Comment arrêter de suivre un fichier déjà commité ?
Ajouter un fichier à .gitignore ne le supprime pas de Git s'il a déjà été suivi dans des commits précédents. Pour arrêter de suivre un fichier existant sans l'effacer de votre disque dur, exécutez 'git rm --cached <fichier>' (ou 'git rm -r --cached <dossier>/' pour un répertoire), puis validez avec un commit.
Puis-je modifier le fichier .gitignore généré ?
Oui. La sortie générée par DotGitIgnore est du texte de configuration Git standard. Vous pouvez librement ajouter des chemins spécifiques, des variables locales, des commentaires ou adapter les règles directement dans le générateur ou dans votre éditeur après téléchargement.
Comment utiliser .gitignore dans Git ?
Créez un fichier nommé .gitignore à la racine de votre dépôt, ajoutez les chemins relatifs ou motifs à exclure (comme dist/, .env ou *.log), et commitez-le avec 'git add .gitignore && git commit -m "Add .gitignore"'. Dès lors, Git ignorera les nouveaux fichiers non suivis correspondant à ces règles.
Comment fonctionne techniquement .gitignore ?
Lors de l'inspection de l'arbre de travail (par exemple, lors de 'git status' ou 'git add .'), Git compare les fichiers non suivis aux règles définies dans vos fichiers .gitignore. Si un chemin correspond à une règle et n'est pas réinclus par une négation ultérieure '!', Git l'exclut de l'indexation.
À quoi sert exactement un fichier .gitignore ?
Un fichier .gitignore indique à Git quels fichiers non suivis doivent être exclus du contrôle de version. Il évite que les caches temporaires, les binaires compilés, les bibliothèques tierces, les fichiers système (.DS_Store) et les identifiants secrets ne soient envoyés par erreur sur les dépôts distants.
Faut-il commiter le fichier .gitignore dans le dépôt ?
Oui. Dans la quasi-totalité des cas, le fichier .gitignore doit être versionné pour que tous les collaborateurs et les pipelines CI/CD partagent les mêmes règles d'exclusion. Pour vos préférences personnelles d'éditeur local, utilisez plutôt .git/info/exclude ou un fichier gitignore global.
Pourquoi mes fichiers ne sont-ils pas ignorés par .gitignore ?
La raison la plus fréquente est que le fichier est déjà suivi par Git. Le fichier .gitignore n'agit que sur les fichiers non suivis ; il ne supprime jamais un fichier déjà commité. Pour y remédier, retirez-le de l'index avec 'git rm --cached <fichier>' puis commitez. Une autre cause courante est une erreur de syntaxe dans le motif.
Que se passe-t-il si l'on ajoute .gitignore dans le .gitignore ?
Si le fichier .gitignore a déjà été commité, s'ajouter lui-même n'a aucun effet car Git le suit déjà. Si vous l'ajoutez avant son premier commit, Git ignorera votre .gitignore, vous empêchant de le partager avec votre équipe. En pratique, il ne faut jamais ignorer le fichier .gitignore.
Comment vérifier si une règle .gitignore s'applique ?
Vous pouvez tester si un fichier est ignoré en exécutant 'git check-ignore -v <chemin>'. Si le fichier est ignoré, Git affiche le fichier .gitignore source, le numéro de ligne et le motif correspondant. Vous pouvez également exécuter 'git status --ignored' pour afficher tous les fichiers exclus.
Quelles sont les bonnes pratiques pour utiliser .gitignore ?
Créez votre fichier .gitignore avant votre tout premier commit, regroupez vos règles par catégories logiques (dépendances, compilation, secrets locaux), versionnez le fichier dans Git et gérez vos outils personnels dans votre gitignore global. DotGitIgnore vous assure de démarrer avec des règles propres et dédupliquées.
Que doit-on inclure dans un fichier .gitignore ?
Incluez les dossiers de build (dist/, build/), les répertoires de dépendances (node_modules/, vendor/), les fichiers d'environnement (.env*), les fichiers binaires (*.class, *.o) et les journaux (*.log). N'ignorez jamais le code source, les fichiers d'exemple de configuration (.env.example) ou les fichiers lock de dépendances.
Peut-on avoir plusieurs fichiers .gitignore dans un même projet ?
Oui. Git prend en charge plusieurs fichiers .gitignore dans l'arborescence des dossiers. Les règles d'un .gitignore situé dans un sous-dossier ne s'appliquent qu'à ce dossier et à ses sous-dossiers, prévalant sur les règles de la racine. C'est particulièrement utile dans les monorepos.
Comment ignorer un fichier précis dans Git ?
Pour ignorer un fichier où qu'il soit, inscrivez son nom dans le .gitignore (par exemple, secret.txt). Pour le restreindre à la racine du dépôt, préfixez-le d'une barre oblique (/secret.txt). Pour cibler un fichier imbriqué précis, indiquez son chemin relatif depuis la racine (config/credentials.json).
Comment ignorer les variables d'environnement et les fichiers .env ?
Ajoutez .env et ses variantes (.env.local, .env.*.local) à votre .gitignore pour empêcher la fuite de clés d'API et de mots de passe de base de données. Commitez toujours un fichier d'exemple comme .env.example avec des valeurs fictives pour informer l'équipe des variables nécessaires.
Quelle est la différence entre .gitignore et .git/info/exclude ?
Le fichier .gitignore est suivi dans Git et partagé avec l'ensemble des contributeurs, ce qui est idéal pour les règles du projet (dépendances, builds). À l'inverse, .git/info/exclude est un fichier local stocké dans .git/ qui n'est jamais commité, parfait pour vos règles privées spécifiques à votre machine.
Que signifie le point d'exclamation (!) dans .gitignore ?
Le point d'exclamation (!) nie un motif pour réinclure un fichier qui avait été exclu par une règle précédente (par exemple, *.log suivi de !important.log). Notez que Git ne peut pas réinclure un fichier si son répertoire parent est déjà totalement ignoré.
Comment forcer Git à suivre un fichier ignoré ?
Vous pouvez forcer Git à ajouter un fichier ignoré en utilisant l'option -f (ou --force) : 'git add -f chemin/vers/fichier'. Une fois commité, le fichier reste suivi par Git même s'il correspond à une règle du .gitignore, jusqu'à ce qu'il soit explicitement retiré avec 'git rm --cached'.