TL;DR
These prompts create a comprehensive .gitignore that prevents secrets, environment files, and sensitive data from being committed. They cover common frameworks, IDEs, and operating systems while ensuring you don't accidentally ignore files you actually need.
Complete .gitignore Setup
Use this prompt to create a comprehensive .gitignore tailored to your project's tech stack. Your AI will analyze your codebase and generate categorized ignore rules for secrets, dependencies, build outputs, IDE files, and OS artifacts.
Full .gitignore Setup
Create a comprehensive .gitignore for my project. Analyze the codebase and include entries for:
- Environment and secrets:
- .env, .env.local, .env.*.local
- Any file containing credentials, keys, or secrets
- Configuration files with sensitive data
- Dependencies:
- node_modules, vendor, venv, pycache
- Package lock files if not needed
- Build outputs:
- dist, build, .next, out
- Compiled files
- IDE and editor:
- .idea, .vscode (except shared settings)
- *.swp, *.swo
- OS files:
- .DS_Store, Thumbs.db
- Logs and temp files:
- *.log, logs/
- tmp, temp, cache
Also:
- Add comments explaining each section
- Check if any currently tracked files should be untracked
- Create entries specific to this project's tech stack
Framework-Specific .gitignore
Next.js / React
Copy this prompt to generate a Next.js-optimized .gitignore with rules for .next/, out/, environment files, coverage reports, and Vercel artifacts. Your AI will also ensure essential files like .env.example and next.config.js stay tracked.
Next.js .gitignore
Create a .gitignore optimized for a Next.js project.
Include:
- .next/ and out/ build directories
- .env.local, .env.*.local (but NOT .env.example)
- node_modules
- Coverage reports
- TypeScript build info
- Vercel deployment files
- IDE settings
- OS files
Also add comments explaining why each entry is ignored.
Make sure these are NOT ignored:
- .env.example (template for other devs)
- next.config.js
- package.json and package-lock.json
- tsconfig.json
Python / Django / Flask
Paste this prompt to generate a Python-specific .gitignore covering __pycache__, virtual environments, pytest caches, coverage output, and Django-specific paths like staticfiles/ and media/.
Python .gitignore
Create a .gitignore for a Python project.
Include:
- pycache and *.pyc files
- venv, .venv, env directories
- .env files (but NOT .env.example)
- *.egg-info and dist
- .pytest_cache
- .coverage and htmlcov
- .mypy_cache
- Jupyter notebook checkpoints
- Database files (*.sqlite3, *.db)
- IDE settings
For Django specifically, also include:
- staticfiles/ (collected static)
- media/ (user uploads)
- local_settings.py
Add comments explaining each section.
Node.js / Express
Use this prompt to generate a Node.js backend .gitignore with rules for node_modules, environment files, build outputs, log files, and TypeScript compilation artifacts.
Node.js .gitignore
Create a .gitignore for a Node.js backend project.
Include:
- node_modules
- .env files (NOT .env.example)
- dist, build output directories
- logs and *.log files
- coverage reports
- .npm cache
- TypeScript build outputs
- IDE settings
- OS files
Consider:
- If using a monorepo, handle root and package-level ignores
- Docker-related files that shouldn't be committed
- Test output files
Security-Focused Additions
Copy this prompt to audit your existing .gitignore for security gaps. Your AI will check for missing entries covering credential files, SSH keys, certificates, database files, and backup files that could leak sensitive data.
Security Audit .gitignore
Audit my .gitignore for security issues and add any missing entries.
Check for:
- Environment files: .env, .env.*, *.env
- Credential files: credentials.json, service-account.json, keyfile.json
- SSH keys: *.pem, *.key, id_rsa, id_ed25519
- Certificate files: *.crt, *.cer, *.p12
- Database files: *.sqlite, *.db
- Backup files: *.bak, *.backup, *.sql
- Config files that might contain secrets
- IDE files that might cache credentials
Also check if any sensitive files are already tracked by git that need to be removed from tracking.
Fix Already-Committed Files
Use this prompt to properly remove files from git tracking after adding them to .gitignore. Your AI will generate the exact git rm --cached commands for your project and check whether you need to clean sensitive data from git history.
Remove Tracked Files
I added entries to .gitignore but the files are still being tracked. Help me properly remove them.
For each file that should be ignored but is still tracked:
- Run: git rm --cached filename
- Or for directories: git rm -r --cached directory
- The files will remain on disk but stop being tracked
After removing from tracking:
- Verify with git status
- Commit the changes
- The files will now be properly ignored
Also check:
- Are any of these files in git history with sensitive data?
- Do I need to clean git history too?
List the exact commands I need to run for my project.
Important: Adding a file to .gitignore after it's already been committed won't remove it from git history. If sensitive data was committed, you may need to clean the git history using git filter-branch or BFG Repo-Cleaner.
Pro tip: Use git check-ignore -v [filename] to see which .gitignore rule is ignoring (or not ignoring) a specific file.
What files should always be in .gitignore?
Always include .env files, node_modules, build outputs, IDE settings, OS files (.DS_Store), and any files containing credentials or API keys.
Can I add files to .gitignore after they've been committed?
Yes, but you'll need to also remove them from git tracking using 'git rm --cached filename'. Simply adding to .gitignore won't remove already-tracked files.
Should I commit .env.example?
Yes. The .env.example file with placeholder values should be committed to help other developers know which environment variables are needed. Just never commit actual .env files.
Check Your .gitignore
Scan your repository to find secrets that should be ignored but aren't.