Waarom negeren globale Git-regels een bestand?

Een bestand kan worden genegeerd zonder passend patroon in het .gitignore van het project. Zoek eerst de echte bron.

1. Bepaal de overeenkomende regel

Vervang vanaf de hoofdmap path/to/file door het echte pad van een niet-gevolgd bestand:

git check-ignore -v -- path/to/file

De uitgebreide uitvoer noemt bronbestand, regelnummer en patroon: .gitignore, .git/info/exclude of een globaal bestand. ! neemt een pad opnieuw op. Geen uitvoer kan ook betekenen dat het bestand al wordt gevolgd; controleer dat apart.

2. Vind het ingestelde globale bestand

Bekijk de effectieve waarde van core.excludesFile en het configuratiebestand dat die instelt:

git config --show-origin --get core.excludesFile

Geen uitvoer met afsluitcode 1 betekent dat deze instelling ontbreekt, niet dat globale regels uitstaan. Git controleert ook $XDG_CONFIG_HOME/git/ignore, of $HOME/.config/git/ignore als XDG_CONFIG_HOME ontbreekt of leeg is. Begin bij de bron die check-ignore meldt.

3. Wijzig de juiste bron en controleer

Gedeelde regels horen in .gitignore, persoonlijke regels voor één repository in .git/info/exclude en voor meerdere repositories in het globale bestand. Een globale wijziging beïnvloedt ook andere repositories; verwijder niet alle configuratie voor één pad. .gitignore gaat voor .git/info/exclude en core.excludesFile. Een projectuitzondering kan een regel met lagere prioriteit overschrijven als geen bovenliggende map uitgesloten blijft. Controleer opnieuw met het echte pad:

git check-ignore -v -- path/to/file

Waarom behoudt ! geen bestand in een genegeerde map?

Raadpleeg de officiële bronnen voor het precieze gedrag en meer informatie: Git-documentatie · Documentatie van git check-ignore · Documentatie over Git-configuratie