Pick your languages, frameworks, editors, and OS — get a clean, combined
.gitignore file ready to commit.
Our free .gitignore generator combines templates for languages, frameworks, editors, and
operating systems into a single, de-duplicated .gitignore file — so you never accidentally
commit node_modules/, a .env file, or your IDE's workspace settings again.
A .gitignore file tells Git which files and folders to leave out of version control. Without
one, it's easy to accidentally commit build artifacts (dist/, build/),
dependency folders (node_modules/, vendor/), local environment secrets
(.env), OS clutter (.DS_Store, Thumbs.db), or personal editor
settings that bloat your repository and leak machine-specific noise into every pull request.
.gitignore in your
repository root.Adding a rule to .gitignore only prevents Git from tracking new matches — it won't
remove a file that's already committed. To untrack it (without deleting it locally), run
git rm --cached <file>, then commit the change alongside your updated
.gitignore.
Most real projects span more than one category — a Next.js frontend with a Node backend, edited in VSCode, developed on macOS. This generator is built for exactly that: select every template that applies, and it merges them into one clean file with duplicate lines removed.
Yes — check as many templates as you need. They're merged
into a single file, and any duplicate rules (like .DS_Store appearing in both a
framework and an OS template) are automatically de-duplicated.
.gitignore only affects untracked files. If Git is already
tracking that file, run git rm --cached <file> to untrack it, then commit.
Save it as .gitignore in the root of your Git
repository. You can also add nested .gitignore files inside subfolders for
folder-specific rules, but a single root-level file covers most projects.
Yes to both. It's completely free, and every template is bundled into the page — nothing is fetched from a server, so it works instantly and privately.
Tell us what to improve or which tool to add next.