.gitignore Generator
Stel een .gitignore-bestand samen door de talen, frameworks en editors aan te vinken die u gebruikt — Node.js, Python, Java, macOS, Windows, VS Code en meer, zonder dubbele regels en direct downloadbaar.
235 weergaven
Hoe het werkt
Vink aan wat op uw project van toepassing is — een taal of runtime zoals Node.js, Python of Java, een besturingssysteem zoals macOS, Windows of Linux, een editor zoals VS Code of IntelliJ/JetBrains, plus Git's eigen restbestanden en een blok voor .env en andere geheimen. Elk vinkje voegt een kleine, gevestigde set negeerpatronen toe, ontleend aan de conventies die de gemeenschap daadwerkelijk gebruikt — node_modules/ voor Node, __pycache__/ en .venv/ voor Python, *.class en target/ voor Java, .DS_Store voor macOS, Thumbs.db voor Windows, enzovoort. Naarmate u meer vinkjes zet, voegt de tool alles samen tot één lijst, verwijdert exacte duplicaten en toont het resultaat live in een tekstvak dat u kunt kopiëren of direct downloaden als bestand met de naam .gitignore.
Categorieën combineren is sneller dan er zelf één vanaf nul schrijven, omdat de meeste echte projecten meteen in meerdere categorieën vallen: een Node.js-API die op een Mac in VS Code wordt ontwikkeld, heeft het Node-blok nodig voor build-artefacten, het macOS-blok zodat .DS_Store nooit in een pull request terechtkomt, en het VS Code-blok zodat uw persoonlijke editorinstellingen die van een teamgenoot niet overschrijven. Alle drie aanvinken en in één keer downloaden is sneller en foutbestendiger dan patronen uit het hoofd samenstellen of fragmenten uit oude projecten kopiëren.
Goed om te weten
Een .gitignore-bestand heeft alleen invloed op bestanden die Git nog niet kent — het vertelt Git welke niet-getrackte bestanden buiten git status, git add . en toekomstige commits moeten blijven. Het heeft geen effect op bestanden die al worden getrackt (al minstens één keer gecommit). Dit is de meest voorkomende verwarring: .env aan .gitignore toevoegen nadat het al gecommit is, verwijdert het bestand niet uit de repository en stopt Git niet met het volgen van verdere wijzigingen eraan. Om een bestand daadwerkelijk uit tracking te halen, moet u eerst git rm --cached <bestand> uitvoeren (dit haalt het uit Git's index maar laat het op schijf staan), die verwijdering committen — pas dan neemt de bijbehorende .gitignore-regel het voor de toekomst over.
De meeste hier aangeboden patronen zijn terug te voeren op GitHub's officiële github/gitignore-repository, de meest geraadpleegde bron voor taal- en toolspecifieke sjablonen en dezelfde collectie die GitHub zelf aanbiedt wanneer u via de webinterface een nieuwe repository aanmaakt. Afhankelijkheidsmappen zoals node_modules/ en build-output zoals dist/ of target/ buiten versiebeheer houden is belangrijk vanwege de omvang — deze mappen kunnen moeiteloos vele malen groter zijn dan uw eigenlijke broncode en zijn triviaal opnieuw te genereren vanuit een lockfile of buildscript — terwijl bestanden zoals .env, *.pem en *.key buiten versiebeheer houden belangrijk is voor de veiligheid: een geheim naar de Git-geschiedenis committen maakt het feitelijk voor altijd openbaar, want het uit de laatste commit verwijderen wist het niet uit eerdere commits zonder de hele geschiedenis te herschrijven.
Veelgestelde vragen
Ik heb een bestand aan .gitignore toegevoegd, maar Git blijft het volgen — waarom?
.gitignore voorkomt alleen dat Git bestanden gaat volgen die het nog niet kent. Als het bestand al gecommit was voordat u de regel toevoegde, blijft Git het volgen, ongeacht wat er in .gitignore staat. Los dit op met git rm --cached <bestand> (of git rm -r --cached <map> voor een map), en commit die wijziging — vanaf dat moment werkt de .gitignore-regel wel.
Kan ik meerdere categorieën combineren, zoals Node.js, macOS en VS Code samen?
Ja — dat is het normale gebruik. Vink elk vakje aan dat op uw situatie van toepassing is; de tool voegt alle resulterende patronen samen tot één lijst en verwijdert exacte duplicaten, zodat dezelfde regel nooit twee keer voorkomt.
Waar komen deze negeerpatronen vandaan?
Ze volgen dezelfde conventies als GitHub's officiële github/gitignore-sjabloonrepository, de standaardreferentie waar de meeste tools en tutorials naar verwijzen. Dit zijn dezelfde bestands- en mappatronen die u zou krijgen als u bij het aanmaken van een repository GitHub's eigen "Add .gitignore"-optie zou gebruiken.
Waarom mogen node_modules/ of .env nooit gecommit worden?
node_modules/ is een afhankelijkheidscache die binnen seconden opnieuw kan worden opgebouwd vanuit package.json/package-lock.json — het committen ervan laat de repository opzwellen met megabytes (soms gigabytes) aan overbodige bestanden. .env is anders: het bevat doorgaans API-sleutels, databasewachtwoorden of andere geheimen, en zodra een geheim in de Git-geschiedenis belandt, moet het als gecompromitteerd worden beschouwd, want het verwijderen uit de laatste commit haalt het niet uit eerdere commits — alleen het herschrijven van de geschiedenis (en het roteren van het geheim) lost dat echt op.
Moet het gedownloade bestand hernoemd worden?
Nee. De downloadknop slaat het bestand op met precies de naam die Git verwacht — .gitignore, met een punt vooraan en zonder extensie — zodat u het rechtstreeks in de hoofdmap van uw project kunt plaatsen, vóór uw eerste commit.
Vergelijkbare tools
Probleem melden
.gitignore Generator
Reacties
Nog geen reacties — schrijf de eerste!