Où appartient le fichier .gitignore?

357

Le fichier .gitignore appartient-il à la structure de dossiers .git quelque part ou aux fichiers source principaux?

mésaventure
la source
20
Vous pouvez avoir un .gitignore dans chaque répertoire unique de votre projet. Cependant, la meilleure pratique consiste à avoir un seul fichier .gitignore dans le répertoire racine du projet et à y placer tous les fichiers que vous souhaitez ignorer.
Pavan Gupta
Je vous remercie d'avoir accepté la mauvaise réponse.
Aaron Hall
@AaronHall - commuté .... n'avait pas revu cela depuis
longtemps

Réponses:

428

Mettez .gitignore dans le répertoire de travail . Cela ne fonctionne pas si vous le placez dans le répertoire .git (référentiel).

$ ls -1d .git*
.git
.gitignore
jmulho
la source
20
Telle est la vraie réponse. Bon pour vous de comprendre la question :)
Mario SE
15
C'est une réponse ambiguë de l'OMI. Où dans le répertoire de travail? À l'origine de cela? Nulle part?
Carles Alcolea
6
@CarlesAlcolea, La réponse dit que vous pouvez placer le .gitignorefichier n'importe où dans le répertoire de travail, c'est-à-dire dans n'importe quel dossier où votre code prévaut. Cela dit, la meilleure pratique serait de placer le .gitignorefichier dans le répertoire racine. Cela signifie un .gitignorefichier pour un repo entier. Cela rend la gestion des fichiers ignorés plus efficace.
Andy
10
J'ai besoin de plus d'explications. Que se passe-t-il si .gitignore est placé dans un sous-répertoire? Régule-t-il simplement le sous-répertoire et ses branches? Est-il possible d'avoir plusieurs .gitignore dans différents sous-répertoires? Est-ce que le fait d'avoir .gitignores avec des règles différentes dans les sous-répertoires cascade sur .gitignores du répertoire parrent?
Behrooz Karjoo
72

Comme les autres réponses l'ont indiqué, vous pouvez placer .gitignoredans n'importe quel répertoire dans un référentiel Git. Cependant, si vous avez besoin d'une version privée de .gitignore, vous pouvez ajouter les règles au .git/info/excludefichier.

Alan Haggai Alavi
la source
4
Aussi, core.excludesfile(voir git-config (1) ) pour spécifier un fichier contenant vos motifs d'exclusion personnels (votre modèle de dénomination de «fichier temporaire» préféré, la sauvegarde / les fichiers temporaires de votre éditeur, etc.). Par conséquent, évitez de mettre des «schémas personnels» dans les .gitignorefichiers suivis .
Chris Johnsen
2
La partie privée de cette réponse a été très utile, car j'ai quelques modifications au projet qui n'appartiennent pas au .gitignorefichier archivé.
OregonGhost
57

Vous pouvez placer .gitignore dans n'importe quel répertoire de git.

Il est couramment utilisé comme fichier d'espace réservé dans les dossiers, car les dossiers ne sont généralement pas suivis par git.

philipk
la source
7
pourquoi êtes-vous autorisé à le mettre n'importe où? Pourquoi git ne se confond pas?
Charlie Parker du
3
Ainsi, le fichier .gitignore peut aller dans le répertoire .git lui-même, n'est-ce pas? (Quelle était la question d'origine). À quoi ça servirait?
bacar
8

Si vous voulez le faire globalement, vous pouvez utiliser le chemin par défaut que git recherchera. Il suffit de le placer dans un fichier nommé "ignorer" dans le chemin~/.config/git

(chemin si plein pour votre fichier est: ~/.config/git/ignore)

Liran Brimer
la source
3

Vous pouvez également trouver un .gitignore global directement sur le chemin ~ si vous ne l'avez pas créé dans votre projet de dossier. Ce fichier est pris en compte par tous vos projets .git.

XLE_22
la source
0

De plus, si vous créez un nouveau compte sur Github, vous aurez la possibilité d'ajouter .gitignore et il sera configuré automatiquement à l'emplacement droit / standard de votre lieu de travail. Vous n'avez rien à ajouter au début, modifiez simplement le contenu à tout moment.

Thielicious
la source