Developer Tools

Git Ignore Generator

Pick the languages, frameworks, editors and operating systems used in your project and get one clean .gitignore. Templates are merged in a sensible order with section comments, duplicate patterns across templates are removed, secrets such as .env files and keys are ignored while .env.example stays tracked, and you can append your own patterns.

  • Runs in your browser
  • No sign-up
  • Free to use
Start from an example
Languages
Frameworks
Editors & OS
Options

    How to use Git Ignore Generator

    1. Tick your languages and frameworks.
    2. Tick the editors and operating systems your team uses.
    3. Add project-specific patterns if needed.
    4. Save the result as .gitignore in the repository root.

    Git Ignore Generator features

    26 templates

    Languages, frameworks, editors and operating systems.

    Merged cleanly

    Sections with comments and duplicates removed.

    Secrets safe

    .env, keys and credential files ignored.

    Team friendly

    Shared VS Code settings stay in the repository.

    Custom patterns

    Your own lines appended at the end.

    Explained

    Notes on untracking files and pattern syntax.

    When to use Git Ignore Generator

    • Starting a new repository with the right ignores.
    • Cleaning up a repository that tracks build output.
    • Combining language, framework and editor rules in one file.
    • Preventing accidental commits of secrets.

    Git Ignore Generator FAQ

    Why are my files still tracked?

    A .gitignore only affects untracked files. Run git rm -r --cached <path> once to stop tracking a file, then commit; the file stays on disk.

    What if a secret was already committed?

    Ignoring it now does not remove it from history. Rotate the secret immediately, because anyone with access to the history can read it.

    Should editor files be in .gitignore?

    Personal editor and OS files can also go into your global gitignore (git config --global core.excludesFile). Including common ones in the project helps every contributor.

    What do / and ! mean?

    A leading / anchors a pattern to the repository root, a trailing / matches only folders, and ! re-includes a path that an earlier pattern excluded.

    Why keep .vscode/settings.json?

    Shared workspace settings, recommended extensions and launch configurations help the whole team; personal state files are still ignored.

    Is anything uploaded?

    No. The file is generated in your browser.

    A .gitignore that fits your project

    A repository should contain source code and configuration, not things that can be regenerated or that belong to one person’s machine: dependency folders, build output, caches, logs, editor state, operating-system files and local secrets. The .gitignore file tells Git which untracked files to leave alone, so they never show up in git status or get committed by accident.

    Real projects combine several sources of such files. A Laravel project has PHP and Composer files, Node.js tooling for the front end, Laravel’s own storage and build folders, and whatever editors and operating systems the team uses. The generator merges the templates for all of them into one file, in a predictable order with a comment above each section.

    Templates overlap, for example build/ appears in several languages, so duplicates are removed, and the number removed is reported. Negated patterns such as !.vscode/settings.json are kept in place, because their order matters.

    The secrets section ignores .env files, private keys, certificates and credential files while re-including .env.example, so the list of required settings stays documented in the repository. This is the single most valuable part of a .gitignore: committed secrets are one of the most common causes of security incidents.

    Remember that ignoring only works for files Git does not already track. If build output or a secret is already in the repository, untrack it with git rm --cached and, for secrets, rotate them.

    Other useful tools