.gitignore Generator
Build a .gitignore from presets
Combine presets for languages, frameworks, editors and operating systems into one clean .gitignore, and test paths against it.
- gitignore
- Git
How to use .gitignore Generator
- Search the template list and tick the languages, frameworks, editors and operating systems you use. Selected templates appear as chips you can click to remove.
- Add anything project-specific under Custom lines. The merged file appears on the right with a
# === Name ===header per section. - Use Copy or Download .gitignore, and save the file in the root of your repository.
- To check a rule, paste file paths in Test paths (end a directory with
/). Each path shows whether it is ignored and which line decided it. Optionally paste your own rules to test those instead.
How it works
About 75 templates are bundled with the page, written for this tool from common practice for each ecosystem. Merging joins the selected templates in the order you chose them, drops any pattern line that an earlier section (or your custom lines) already contains, and keeps comments.
The tester implements gitignore semantics in JavaScript: blank lines and # comments are skipped; a leading ! re-includes; a pattern with a / at the start or middle is anchored to the repository root, otherwise it matches a name at any depth; a trailing / matches directories only; * and ? never match /; [abc], [a-z], [!x] and [[:digit:]] classes work; ** works as **/x, x/** and a/**/b; \ escapes #, !, spaces and wildcards; trailing unescaped spaces are ignored. The last matching rule wins. Parent directories are checked first, so a file inside an excluded directory stays ignored even if a later ! rule names it, as in git.
Limits
- The tester reads one rule list as if it were the
.gitignoreat the repository root. Nested.gitignorefiles,.git/info/exclude, the global ignore file and files already tracked by git are not considered (git never ignores a tracked file). - Matching is case-sensitive unless you tick Ignore case. Unicode normalisation (macOS) and symbolic links are not modelled.
- Whether a path is a directory comes from a trailing
/you type. The tester cannot look at your disk. - Up to 2,000 paths and 20,000 rule lines are tested. Templates are a starting point, not a complete copy of any official list; review them against your project.
Privacy
Templates are bundled in the page and matching runs in your browser; nothing is fetched, uploaded or stored. Share copies a link that holds your selection, custom lines and test input in the URL’s # fragment, which browsers do not send to servers. Anyone with the link can read it. If you receive text from another tool, it is handed over through this tab’s session storage and removed as soon as it is read.
Frequently asked questions
Why is my file still ignored after I added a ! rule?
Git cannot re-include a file if one of its parent directories is excluded. Ignore the directory’s contents with build/* instead of build/, then add !build/keep.txt.
Why is a file I already committed still tracked?
.gitignore only affects untracked files. Run git rm --cached <file> to stop tracking it, then commit.
What is the difference between foo, /foo and foo/?
foo matches any file or directory named foo at any depth, /foo only the one in the repository root, and foo/ only directories named foo.
Why are duplicate lines removed?
Templates such as Node.js, React and Next.js share many patterns. The first section keeps the line and later copies are dropped, so the merged file stays short without changing what is ignored.
More tools
- Clean Image: Inspect and remove hidden image metadata
- JWT Decoder: Decode and verify JSON Web Tokens
- Diff Checker: Compare two texts line by line
- JS Runner: Run JavaScript and TypeScript in your browser
- JSON Formatter: Format, validate and minify JSON
- Encode / Decode: Base64, URL, HTML entity and hex
- Hash Generator: MD5, SHA and HMAC of any text
- UUID Generator: Generate UUID v4 and v7 in bulk
- Timestamp Converter: Unix time ↔ human dates
- Regex Tester: Test regular expressions live
- URL Parser: Break a URL into its parts
- HTTP Status Codes: Look up any HTTP status code
- MIME Type Lookup: File extension ↔ MIME type
- Password Generator: Strong random passwords and passphrases
- Random String Generator: Random tokens, IDs and keys
- Slug Generator: Turn titles into URL slugs
- Case Converter: camelCase, snake_case, Title Case and more
- Word Counter: Count words, characters and reading time
- JSON to TypeScript: Generate TypeScript types from JSON
- JSON Diff: Compare two JSON documents structurally
- JSON to SQL: Turn JSON arrays into SQL inserts
- YAML ↔ JSON: Convert between YAML and JSON
- XML ↔ JSON: Convert between XML and JSON
- CSV ↔ JSON: Convert between CSV and JSON
- CSV Viewer: View, sort and filter CSV files
- SQL Formatter: Format and beautify SQL queries
- cURL ↔ Fetch: Convert cURL commands to fetch and back
- Markdown Editor: Write Markdown with a live preview
- Text Cleaner: Remove duplicate lines, empty lines and extra spaces
- Find & Replace: Find and replace in any text
- Cron Expression Builder: Build and explain cron schedules
- User-Agent Parser: Identify browser, OS and device from a user agent
- HTTP Headers Inspector: Paste response headers and get them explained
- JWT Generator: Create and sign test JSON Web Tokens
- Certificate Inspector: Decode PEM certificates and keys
- Meta Tag Inspector: Check a page's SEO and social tags
- UTM Builder: Build campaign URLs with UTM parameters
- URL Cleaner: Strip tracking parameters from links
- Robots.txt Generator: Create and test a robots.txt file
- Sitemap Generator: Create an XML sitemap from a list of URLs
- Image Compressor: Shrink JPEG, WebP and AVIF images in your browser
- Image Resizer: Resize images by pixels, percentage or to fit a box
- Image Converter: Convert between PNG, JPEG, WebP and AVIF
- Image to Base64: Encode images as Base64 data URIs and decode them back
- SVG Optimizer: Minify and sanitize SVG files
- Favicon Generator: Make favicon.ico, Apple and Android icons from an image or emoji
- Color Converter: HEX, RGB, HSL, OKLCH and contrast checks
- Number Base Converter: Binary, octal, decimal, hex and float bits
- IP / CIDR Calculator: Subnets, masks and IP ranges for IPv4 and IPv6
- JSONPath Query: Query JSON with JSONPath expressions
- JSON Schema Validator: Validate JSON against a schema, or generate one
- Semver Checker: Check versions against semver ranges
- chmod Calculator: Unix permissions: rwx ↔ octal
- .env Diff: Compare and validate .env files
- TOTP Generator: Generate and verify 2FA codes
- String Escaper: Escape and unescape strings for any language
- Unicode Inspector: See every character, code point and hidden symbol
- Mock Data Generator: Generate realistic fake data
- QR Code Generator: Create QR codes for links, Wi-Fi and contacts
- Lorem Ipsum Generator: Placeholder text in paragraphs, sentences or words
- Date Calculator: Date differences, business days and durations
- Unit Converter: Convert bytes, lengths, weights, temperatures and more
- Query CSV with SQL: Run SQL queries on CSV files
- PDF Merge & Split: Merge, split, reorder and rotate PDFs
- PDF Metadata Cleaner: See and remove hidden PDF metadata
- Office Metadata Cleaner: Remove author and revision data from Word, Excel and PowerPoint
- Images to PDF: Combine images into one PDF
- Image Editor: Crop, rotate, resize and adjust images
- Encrypt / Decrypt Text: Encrypt text with a passphrase (AES-GCM)
- SSH Key Generator: Generate Ed25519 and RSA SSH keys locally
- Email Header Analyzer: Trace an email's path and check SPF, DKIM and DMARC
- JSON to Code: Generate Go, Python, Rust, Java, C# and Kotlin models from JSON
- docker run ↔ Compose: Convert docker run commands to docker-compose and back
- Color Palette Extractor: Pull the dominant colours out of any image
- Password Strength Checker: How long would your password take to crack?
- SPF / DKIM / DMARC Checker: Validate and explain email DNS records
- Kubernetes YAML Checker: Validate and explain Kubernetes manifests
- CSP Builder: Build and check a Content-Security-Policy
- JSON-LD Generator: Create schema.org structured data
- Open Graph Image Generator: Make 1200×630 social preview images
- CSS Generator: Gradients, shadows, clamp() and more
- Time Zone Meeting Planner: Find meeting times across time zones