.gitignore for Django + Python
Complete .gitignore for Django web applications with full Python environment coverage.
Quick presets
Selected (2)
DjangoPython
Your selections never leave your browser. Generation happens entirely client-side.
78 patterns · 1006 B
# Generated by DevZone Tools — https://devzone.tools/tools/gitignore-generator # Templates: Python, Django # 2026-04-20 # ---- Python ---- # Python __pycache__/ *.py[cod] *$py.class *.so .Python build/ develop-eggs/ dist/ downloads/ eggs/ .eggs/ lib/ lib64/ parts/ sdist/ var/ wheels/ share/python-wheels/ *.egg-info/ .installed.cfg *.egg MANIFEST *.manifest *.spec pip-log.txt pip-delete-this-directory.txt .tox/ .nox/ .coverage .coverage.* .cache nosetests.xml coverage.xml *.cover *.py,cover .hypothesis/ .pytest_cache/ cover/ *.mo *.pot *.log local_settings.py db.sqlite3 db.sqlite3-journal instance/ .webassets-cache .scrapy docs/_build/ .pybuilder/ target/ .ipynb_checkpoints profile_default/ ipython_config.py .pdm.toml __pypackages__/ celerybeat-schedule celerybeat.pid *.sage.py .env .venv env/ venv/ ENV/ env.bak/ venv.bak/ .spyderproject.db .spyproject .ropeproject /site .mypy_cache/ .dmypy.json dmypy.json .pyre/ .pytype/ cython_debug/ # ---- Django ---- # Django *.pyc media staticfiles/
Why use Django + Python together?
Django projects need two layers of coverage: Python language artifacts (__pycache__, .pyc files, virtual environments) and Django-specific files (local_settings.py, SQLite databases, collected static files, uploaded media).
The db.sqlite3 file is the development database and must never be committed — it contains local data and changes constantly. Use Django migrations (which should be committed) to define the schema. The staticfiles/ directory generated by collectstatic is deployment output and should also be ignored.
Related combinations
Frequently asked questions
- Do I need to commit .gitignore?
- Yes — .gitignore should be committed to the repository so all collaborators benefit from the same ignore rules.
- How do I add custom patterns?
- Open your .gitignore file and add the pattern on a new line. Use # for comments, * for wildcards, / to match directories, and ! to un-ignore a previously ignored path.
- How do I ignore a file that is already tracked?
- Adding a file to .gitignore does not remove it from tracking if it was previously committed. Run: git rm --cached <file> to stop tracking it without deleting the file locally.
- Why combine Django and Python?
- Django projects need two layers of coverage: Python language artifacts (__pycache__, .pyc files, virtual environments) and Django-specific files (local_settings.py, SQLite databases, collected static files, uploaded media).
Looking for something else? Browse all templates →