.gitignore per Python
95 regole di esclusione per Python, pronte da copiare nel repository.
Il linguaggio di programmazione Python
Il .gitignore completo per Python
# Generato da LFGitignore - https://lfgitignore.com
# Creato: 2026-10-13 16:10:47 UTC
# Tecnologie: Python
### Python ###
# Directory della cache del bytecode Python
__pycache__/
*.py[codz]
# File di classe Python/Jython
*$py.class
# Profilo predefinito di IPython
profile_default/
# Oggetto condiviso
*.so
# Configurazione di IPython
ipython_config.py
# Indicatore della versione Python
.Python
# Directory dei risultati di compilazione
build/
# Egg di sviluppo Python
develop-eggs/
# Directory di distribuzione
dist/
# File scaricati
downloads/
# Pacchetti egg Python
eggs/
# Directory degli egg Python
.eggs/
# Directory delle librerie
lib/
# Directory delle librerie a 64 bit
lib64/
# Componenti di Buildout
parts/
# Distribuzione dei sorgenti Python
sdist/
var/
# Pacchetti wheel Python
wheels/
# Wheel Python condivisi
share/python-wheels/
# Metadati dei pacchetti Python
*.egg-info/
# Configurazione installata di Buildout
.installed.cfg
# Pacchetto egg Python
*.egg
# File manifest Python
MANIFEST
# File manifest
*.manifest
# File di specifica di PyInstaller
*.spec
# Log di installazione di pip
pip-log.txt
# File indicatore di pip
pip-delete-this-directory.txt
# Report HTML della copertura
htmlcov/
# Ambienti di test tox
.tox/
# Ambienti di test nox
.nox/
# File dei dati di copertura
.coverage
# File dei dati di copertura
.coverage.*
# Directory della cache
.cache
# Risultati dei test Nose
nosetests.xml
# Report XML della copertura
coverage.xml
# Sorgenti annotati con la copertura
*.cover
*.py.cover
# Dati di copertura LCOV
*.lcov
# Dati dei test Hypothesis
.hypothesis/
# Directory della cache pytest
.pytest_cache/
# Report di copertura
cover/
# Cataloghi dei messaggi compilati
*.mo
# Modello del catalogo dei messaggi
*.pot
# File di log
*.log
# Impostazioni locali di Django
local_settings.py
# Database SQLite
db.sqlite3
# Journal SQLite
db.sqlite3-journal
# Cartella dell'istanza Flask
instance/
# Cache di Flask-Assets
.webassets-cache
# Cache di Scrapy
.scrapy
# Risultati della compilazione Sphinx
docs/_build/
# Directory di PyBuilder
.pybuilder/
# Directory di compilazione di Maven
target/
# Checkpoint dei notebook Jupyter
.ipynb_checkpoints
.pdm-python
.pdm-build/
.pixi/*
# Pacchetti PEP 582
__pypackages__/
!.pixi/config.toml
# File PID di Celery beat
celerybeat.pid
# File compilati di Sage
*.sage.py
celerybeat-schedule*
# Variabili d'ambiente
.env
*.rdb
.envrc
*.aof
# Ambiente virtuale Python
.venv
# File dell'ID del processo
*.pid
# Directory dell'ambiente virtuale
env/
mnesia/
# Directory dell'ambiente virtuale
venv/
rabbitmq/
# Backup dell'ambiente
env.bak/
rabbitmq-data/
activemq-data/
# Backup dell'ambiente virtuale
venv.bak/
# Progetto Spyder
.spyderproject
# Impostazioni del progetto Spyder
.spyproject
# Refactoring Python con rope
.ropeproject
/site
# Cache del verificatore dei tipi mypy
.mypy_cache/
# Configurazione del demone mypy
.dmypy.json
# Configurazione del demone mypy
dmypy.json
# Verificatore dei tipi Pyre
.pyre/
# Analizzatore statico pytype
.pytype/
# Simboli di debug di Cython
cython_debug/
.abstra/
.ruff_cache/
.pypirc
marimo/_static/
marimo/_lsp/
__marimo__/
.streamlit/secrets.toml
tempCodeRunnerFile.py
Cosa escludono le regole di Python
Tutti i pattern e i motivi per includerli nel tuo .gitignore.
File compilati in bytecode, ottimizzati e DLL
| Schema di esclusione | Cosa esclude |
|---|---|
__pycache__/ |
Directory della cache del bytecode Python |
*.py[codz] |
File compilati in bytecode, ottimizzati e DLL |
*$py.class |
File di classe Python/Jython |
IPython
| Schema di esclusione | Cosa esclude |
|---|---|
profile_default/ |
Profilo predefinito di IPython |
ipython_config.py |
Configurazione di IPython |
.pdm-python |
pdm: come per Pipfile.lock, si consiglia generalmente di includere pdm.lock nel controllo versione. pdm consiglia di includere la configurazione dell'intero progetto in pdm.toml, ma di escludere .pdm-python. https://pdm-project.org/en/latest/usage/project/#working-with-version-control pdm.lock pdm.toml |
.pdm-build/ |
IPython |
.pixi/* |
pixi: come per Pipfile.lock, si consiglia generalmente di includere pixi.lock nel controllo versione. pixi.lock Pixi crea un ambiente virtuale nella directory .pixi, come il modulo venv ne crea uno nella directory .venv. Si consiglia di non includere questa directory nel controllo versione. |
!.pixi/config.toml |
IPython |
Estensioni C
| Schema di esclusione | Cosa esclude |
|---|---|
*.so |
Oggetto condiviso |
Distribuzione e creazione dei pacchetti
| Schema di esclusione | Cosa esclude |
|---|---|
.Python |
Indicatore della versione Python |
build/ |
Directory dei risultati di compilazione |
develop-eggs/ |
Egg di sviluppo Python |
dist/ |
Directory di distribuzione |
downloads/ |
File scaricati |
eggs/ |
Pacchetti egg Python |
.eggs/ |
Directory degli egg Python |
lib/ |
Directory delle librerie |
lib64/ |
Directory delle librerie a 64 bit |
parts/ |
Componenti di Buildout |
sdist/ |
Distribuzione dei sorgenti Python |
var/ |
Distribuzione e creazione dei pacchetti |
wheels/ |
Pacchetti wheel Python |
share/python-wheels/ |
Wheel Python condivisi |
*.egg-info/ |
Metadati dei pacchetti Python |
.installed.cfg |
Configurazione installata di Buildout |
*.egg |
Pacchetto egg Python |
MANIFEST |
File manifest Python |
*.manifest |
File manifest |
*.spec |
File di specifica di PyInstaller |
Log del programma di installazione
| Schema di esclusione | Cosa esclude |
|---|---|
pip-log.txt |
Log di installazione di pip |
pip-delete-this-directory.txt |
File indicatore di pip |
Report di test unitari e copertura
| Schema di esclusione | Cosa esclude |
|---|---|
htmlcov/ |
Report HTML della copertura |
.tox/ |
Ambienti di test tox |
.nox/ |
Ambienti di test nox |
.coverage |
File dei dati di copertura |
.coverage.* |
File dei dati di copertura |
.cache |
Directory della cache |
nosetests.xml |
Risultati dei test Nose |
coverage.xml |
Report XML della copertura |
*.cover |
Sorgenti annotati con la copertura |
*.py.cover |
Report di test unitari e copertura |
.hypothesis/ |
Dati dei test Hypothesis |
*.lcov |
Dati di copertura LCOV |
.pytest_cache/ |
Directory della cache pytest |
cover/ |
Report di copertura |
Traduzioni
| Schema di esclusione | Cosa esclude |
|---|---|
*.mo |
Cataloghi dei messaggi compilati |
*.pot |
Modello del catalogo dei messaggi |
File di Django:
| Schema di esclusione | Cosa esclude |
|---|---|
*.log |
File di log |
local_settings.py |
Impostazioni locali di Django |
db.sqlite3 |
Database SQLite |
db.sqlite3-journal |
Journal SQLite |
File di Flask:
| Schema di esclusione | Cosa esclude |
|---|---|
instance/ |
Cartella dell'istanza Flask |
.webassets-cache |
Cache di Flask-Assets |
File di Scrapy:
| Schema di esclusione | Cosa esclude |
|---|---|
.scrapy |
Cache di Scrapy |
Documentazione Sphinx
| Schema di esclusione | Cosa esclude |
|---|---|
docs/_build/ |
Risultati della compilazione Sphinx |
PyBuilder
| Schema di esclusione | Cosa esclude |
|---|---|
.pybuilder/ |
Directory di PyBuilder |
target/ |
Directory di compilazione di Maven |
Jupyter Notebook
| Schema di esclusione | Cosa esclude |
|---|---|
.ipynb_checkpoints |
Checkpoint dei notebook Jupyter |
PEP 582; usato ad esempio da github.com/David-OConnor/pyflow e github.com/pdm-project/pdm
| Schema di esclusione | Cosa esclude |
|---|---|
__pypackages__/ |
Pacchetti PEP 582 |
File di Celery
| Schema di esclusione | Cosa esclude |
|---|---|
celerybeat.pid |
File PID di Celery beat |
celerybeat-schedule* |
File di Celery |
File analizzati da SageMath
| Schema di esclusione | Cosa esclude |
|---|---|
*.sage.py |
File compilati di Sage |
Ambienti
| Schema di esclusione | Cosa esclude |
|---|---|
.env |
Variabili d'ambiente |
.envrc |
Ambienti |
.venv |
Ambiente virtuale Python |
env/ |
Directory dell'ambiente virtuale |
venv/ |
Directory dell'ambiente virtuale |
env.bak/ |
Backup dell'ambiente |
venv.bak/ |
Backup dell'ambiente virtuale |
Redis
| Schema di esclusione | Cosa esclude |
|---|---|
*.rdb |
Redis |
*.aof |
Redis |
*.pid |
File dell'ID del processo |
RabbitMQ
| Schema di esclusione | Cosa esclude |
|---|---|
mnesia/ |
RabbitMQ |
rabbitmq/ |
RabbitMQ |
rabbitmq-data/ |
RabbitMQ |
ActiveMQ
| Schema di esclusione | Cosa esclude |
|---|---|
activemq-data/ |
ActiveMQ |
Impostazioni del progetto Spyder
| Schema di esclusione | Cosa esclude |
|---|---|
.spyderproject |
Progetto Spyder |
.spyproject |
Impostazioni del progetto Spyder |
Impostazioni del progetto Rope
| Schema di esclusione | Cosa esclude |
|---|---|
.ropeproject |
Refactoring Python con rope |
/site |
Documentazione mkdocs |
.mypy_cache/ |
Cache del verificatore dei tipi mypy |
.dmypy.json |
Configurazione del demone mypy |
dmypy.json |
Configurazione del demone mypy |
Verificatore dei tipi Pyre
| Schema di esclusione | Cosa esclude |
|---|---|
.pyre/ |
Verificatore dei tipi Pyre |
.pytype/ |
Analizzatore statico pytype |
Simboli di debug di Cython
| Schema di esclusione | Cosa esclude |
|---|---|
cython_debug/ |
Simboli di debug di Cython |
Scopri di più su https://abstra.io/docs
| Schema di esclusione | Cosa esclude |
|---|---|
.abstra/ |
Scopri di più su https://abstra.io/docs |
File di Ruff:
| Schema di esclusione | Cosa esclude |
|---|---|
.ruff_cache/ |
File di Ruff: |
File di configurazione di PyPI
| Schema di esclusione | Cosa esclude |
|---|---|
.pypirc |
File di configurazione di PyPI |
Marimo
| Schema di esclusione | Cosa esclude |
|---|---|
marimo/_static/ |
Marimo |
marimo/_lsp/ |
Marimo |
__marimo__/ |
Marimo |
Streamlit
| Schema di esclusione | Cosa esclude |
|---|---|
.streamlit/secrets.toml |
Streamlit |
File temporaneo per l'esecuzione parziale del codice
| Schema di esclusione | Cosa esclude |
|---|---|
tempCodeRunnerFile.py |
File temporaneo per l'esecuzione parziale del codice |
Come usare questo .gitignore per Python
- Copia le regole di Python qui sopra oppure scarica direttamente il file.
- Crea un file chiamato .gitignore nella radice del repository Git e incolla le regole al suo interno.
- Se Git tiene già traccia di alcuni di questi file, esegui git rm -r --cached . e crea un nuovo commit: Git applica le regole di esclusione solo ai file non tracciati.
- Includi .gitignore in un commit affinché tutto il team condivida le stesse regole.