.gitignore Generator
Build a merged, deduped .gitignore by checking off any combination of language, editor, and OS templates (Node, Python, VS Code, macOS, and more).
Templates
Languages & Frameworks
Editors & IDEs
Operating Systems
Other
Browsers won't save a download with a name that starts with a dot, so the file saves as "gitignore"; rename it to ".gitignore" after saving (copying instead avoids this, since you paste directly into a file you name yourself).
Common Use Cases
About .gitignore Generator
A project's .gitignore file tells Git which files and folders it should never track: build output, dependency directories, local environment files, and the assorted clutter your editor or operating system drops into a project folder. Getting a good one usually means hunting down and pasting together several different templates: one for your language or framework, one for your editor, one for your OS. This generator does that merging for you.
Check off any combination of templates from the categories below: Languages & Frameworks (Node, Python, Java, Go, Rust, Ruby, PHP, C/C++, .NET, Android), Editors & IDEs (VS Code, IntelliJ IDEA/JetBrains, Sublime Text, Vim), Operating Systems (macOS, Windows, Linux), and a general Git template, and the output panel builds a single combined .gitignore live, in the order shown above. Every selected template gets its own labeled section, and any pattern line that already appeared in an earlier section (for example ".env" showing up in both the Node and PHP templates, or ".DS_Store" showing up in both the macOS and VS Code templates) is only kept once, so the result never repeats itself.
This is meant to cover the common case quickly, not to replace github/gitignore's full template collection for every possible framework or tool. If you need a stack that isn't listed, add its patterns to the generated file by hand afterward, or start from the closest match here.
Once you're happy with the result, copy it to your clipboard, or download it; browsers won't let a downloaded file's name start with a dot, so it saves as a plain file named "gitignore" that you rename to ".gitignore" afterward; copying and pasting into a file you create and name yourself sidesteps that entirely. Everything, from the templates to the merging and deduping, runs as plain JavaScript in your browser tab; nothing you select or generate is ever uploaded to a server, logged, or stored.
Frequently Asked Questions
How does the tool avoid duplicate lines when I select several templates?
Why does the downloaded file get named "gitignore" instead of ".gitignore"?
Can I select more than one template at a time?
Does the order I click the checkboxes change the output?
What if my language or tool isn't in the list?
Is anything I select or generate sent anywhere?
Related Tools
View all GeneratorsLorem Ipsum Generator
Generate paragraphs, sentences, or words of placeholder text for mockups and designs.
Random Number Generator
Generate random numbers with custom ranges, quantity, and sorting options for testing and development.
QR Code Generator
Generate and download QR codes for any URL or text. Customize size, colors, and error correction level.