.gitignore para Python

95 reglas de exclusión para Python, listas para copiar en tu repositorio.

Lenguaje de programación Python

El .gitignore completo para Python

# Generado por LFGitignore - https://lfgitignore.com
# Creado: 2026-10-13 16:10:47 UTC
# Tecnologías: Python

### Python ###
# Directorio de caché de bytecode de Python
__pycache__/
*.py[codz]
# Archivos de clases de Python/Jython
*$py.class
# Perfil predeterminado de IPython
profile_default/
# Objeto compartido
*.so
# Configuración de IPython
ipython_config.py
# Indicador de versión de Python
.Python
# Directorio de resultados de compilación
build/
# Paquetes egg de desarrollo de Python
develop-eggs/
# Directorio de distribución
dist/
# Archivos descargados
downloads/
# Paquetes egg de Python
eggs/
# Directorio de paquetes egg de Python
.eggs/
# Directorio de bibliotecas
lib/
# Directorio de bibliotecas de 64 bits
lib64/
# Componentes de Buildout
parts/
# Distribución del código fuente de Python
sdist/
var/
# Paquetes wheel de Python
wheels/
# Paquetes wheel de Python compartidos
share/python-wheels/
# Metadatos de paquetes de Python
*.egg-info/
# Configuración instalada de Buildout
.installed.cfg
# Paquete egg de Python
*.egg
# Archivo de manifiesto de Python
MANIFEST
# Archivos de manifiesto
*.manifest
# Archivo de especificación de PyInstaller
*.spec
# Registro de instalación de pip
pip-log.txt
# Archivo de marcador de pip
pip-delete-this-directory.txt
# Informe de cobertura HTML
htmlcov/
# Entornos de pruebas de tox
.tox/
# Entornos de pruebas de nox
.nox/
# Archivo de datos de cobertura
.coverage
# Archivos de datos de cobertura
.coverage.*
# Directorio de caché
.cache
# Resultados de pruebas de Nose
nosetests.xml
# Informe de cobertura XML
coverage.xml
# Código fuente anotado con cobertura
*.cover
*.py.cover
# Datos de cobertura LCOV
*.lcov
# Datos de pruebas de Hypothesis
.hypothesis/
# Directorio de caché de pytest
.pytest_cache/
# Informes de cobertura
cover/
# Catálogos de mensajes compilados
*.mo
# Plantilla de catálogo de mensajes
*.pot
# Archivo de registro
*.log
# Configuración local de Django
local_settings.py
# Base de datos SQLite
db.sqlite3
# Diario de SQLite
db.sqlite3-journal
# Carpeta de instancia de Flask
instance/
# Caché de Flask-Assets
.webassets-cache
# Caché de Scrapy
.scrapy
# Resultados de compilación de Sphinx
docs/_build/
# Directorio de PyBuilder
.pybuilder/
# Directorio de compilación de Maven
target/
# Puntos de control de cuadernos Jupyter
.ipynb_checkpoints
.pdm-python
.pdm-build/
.pixi/*
# Paquetes de PEP 582
__pypackages__/
!.pixi/config.toml
# Archivo PID de Celery beat
celerybeat.pid
# Archivos compilados de Sage
*.sage.py
celerybeat-schedule*
# Variables de entorno
.env
*.rdb
.envrc
*.aof
# Entorno virtual de Python
.venv
# Archivo de identificador de proceso
*.pid
# Directorio del entorno virtual
env/
mnesia/
# Directorio del entorno virtual
venv/
rabbitmq/
# Copia de seguridad del entorno
env.bak/
rabbitmq-data/
activemq-data/
# Copia de seguridad del entorno virtual
venv.bak/
# Proyecto de Spyder
.spyderproject
# Configuración del proyecto Spyder
.spyproject
# Refactorización de Python con rope
.ropeproject
/site
# Caché del comprobador de tipos mypy
.mypy_cache/
# Configuración del demonio de mypy
.dmypy.json
# Configuración del demonio de mypy
dmypy.json
# Comprobador de tipos Pyre
.pyre/
# Analizador estático pytype
.pytype/
# Símbolos de depuración de Cython
cython_debug/
.abstra/
.ruff_cache/
.pypirc
marimo/_static/
marimo/_lsp/
__marimo__/
.streamlit/secrets.toml
tempCodeRunnerFile.py

Qué ignoran estas reglas de Python

Todos los patrones y por qué incluirlos en tu .gitignore.

Archivos compilados a bytecode / optimizados / DLL

Patrón Qué ignora
__pycache__/ Directorio de caché de bytecode de Python
*.py[codz] Archivos compilados a bytecode / optimizados / DLL
*$py.class Archivos de clases de Python/Jython

IPython

Patrón Qué ignora
profile_default/ Perfil predeterminado de IPython
ipython_config.py Configuración de IPython
.pdm-python pdm: al igual que con Pipfile.lock, se recomienda incluir pdm.lock en el control de versiones. pdm recomienda incluir la configuración del proyecto en pdm.toml, pero excluir .pdm-python. https://pdm-project.org/en/latest/usage/project/#working-with-version-control pdm.lock pdm.toml
.pdm-build/ IPython
.pixi/* pixi: al igual que con Pipfile.lock, se recomienda incluir pixi.lock en el control de versiones. pixi.lock Pixi crea un entorno virtual en el directorio .pixi, igual que el módulo venv lo crea en .venv. Se recomienda no incluir este directorio en el control de versiones.
!.pixi/config.toml IPython

Extensiones de C

Patrón Qué ignora
*.so Objeto compartido

Distribución / empaquetado

Patrón Qué ignora
.Python Indicador de versión de Python
build/ Directorio de resultados de compilación
develop-eggs/ Paquetes egg de desarrollo de Python
dist/ Directorio de distribución
downloads/ Archivos descargados
eggs/ Paquetes egg de Python
.eggs/ Directorio de paquetes egg de Python
lib/ Directorio de bibliotecas
lib64/ Directorio de bibliotecas de 64 bits
parts/ Componentes de Buildout
sdist/ Distribución del código fuente de Python
var/ Distribución / empaquetado
wheels/ Paquetes wheel de Python
share/python-wheels/ Paquetes wheel de Python compartidos
*.egg-info/ Metadatos de paquetes de Python
.installed.cfg Configuración instalada de Buildout
*.egg Paquete egg de Python
MANIFEST Archivo de manifiesto de Python
*.manifest Archivos de manifiesto
*.spec Archivo de especificación de PyInstaller

Registros del instalador

Patrón Qué ignora
pip-log.txt Registro de instalación de pip
pip-delete-this-directory.txt Archivo de marcador de pip

Informes de pruebas unitarias y cobertura

Patrón Qué ignora
htmlcov/ Informe de cobertura HTML
.tox/ Entornos de pruebas de tox
.nox/ Entornos de pruebas de nox
.coverage Archivo de datos de cobertura
.coverage.* Archivos de datos de cobertura
.cache Directorio de caché
nosetests.xml Resultados de pruebas de Nose
coverage.xml Informe de cobertura XML
*.cover Código fuente anotado con cobertura
*.py.cover Informes de pruebas unitarias y cobertura
.hypothesis/ Datos de pruebas de Hypothesis
*.lcov Datos de cobertura LCOV
.pytest_cache/ Directorio de caché de pytest
cover/ Informes de cobertura

Traducciones

Patrón Qué ignora
*.mo Catálogos de mensajes compilados
*.pot Plantilla de catálogo de mensajes

Archivos de Django:

Patrón Qué ignora
*.log Archivo de registro
local_settings.py Configuración local de Django
db.sqlite3 Base de datos SQLite
db.sqlite3-journal Diario de SQLite

Archivos de Flask:

Patrón Qué ignora
instance/ Carpeta de instancia de Flask
.webassets-cache Caché de Flask-Assets

Archivos de Scrapy:

Patrón Qué ignora
.scrapy Caché de Scrapy

Documentación de Sphinx

Patrón Qué ignora
docs/_build/ Resultados de compilación de Sphinx

PyBuilder

Patrón Qué ignora
.pybuilder/ Directorio de PyBuilder
target/ Directorio de compilación de Maven

Jupyter Notebook

Patrón Qué ignora
.ipynb_checkpoints Puntos de control de cuadernos Jupyter

PEP 582; utilizado, por ejemplo, por github.com/David-OConnor/pyflow y github.com/pdm-project/pdm

Patrón Qué ignora
__pypackages__/ Paquetes de PEP 582

Archivos de Celery

Patrón Qué ignora
celerybeat.pid Archivo PID de Celery beat
celerybeat-schedule* Archivos de Celery

Archivos analizados de SageMath

Patrón Qué ignora
*.sage.py Archivos compilados de Sage

Entornos

Patrón Qué ignora
.env Variables de entorno
.envrc Entornos
.venv Entorno virtual de Python
env/ Directorio del entorno virtual
venv/ Directorio del entorno virtual
env.bak/ Copia de seguridad del entorno
venv.bak/ Copia de seguridad del entorno virtual

Redis

Patrón Qué ignora
*.rdb Redis
*.aof Redis
*.pid Archivo de identificador de proceso

RabbitMQ

Patrón Qué ignora
mnesia/ RabbitMQ
rabbitmq/ RabbitMQ
rabbitmq-data/ RabbitMQ

ActiveMQ

Patrón Qué ignora
activemq-data/ ActiveMQ

Configuración del proyecto Spyder

Patrón Qué ignora
.spyderproject Proyecto de Spyder
.spyproject Configuración del proyecto Spyder

Configuración del proyecto Rope

Patrón Qué ignora
.ropeproject Refactorización de Python con rope
/site Documentación de mkdocs
.mypy_cache/ Caché del comprobador de tipos mypy
.dmypy.json Configuración del demonio de mypy
dmypy.json Configuración del demonio de mypy

Comprobador de tipos Pyre

Patrón Qué ignora
.pyre/ Comprobador de tipos Pyre
.pytype/ Analizador estático pytype

Símbolos de depuración de Cython

Patrón Qué ignora
cython_debug/ Símbolos de depuración de Cython

Más información en https://abstra.io/docs

Patrón Qué ignora
.abstra/ Más información en https://abstra.io/docs

Archivos de Ruff:

Patrón Qué ignora
.ruff_cache/ Archivos de Ruff:

Archivo de configuración de PyPI

Patrón Qué ignora
.pypirc Archivo de configuración de PyPI

Marimo

Patrón Qué ignora
marimo/_static/ Marimo
marimo/_lsp/ Marimo
__marimo__/ Marimo

Streamlit

Patrón Qué ignora
.streamlit/secrets.toml Streamlit

Archivo temporal para la ejecución parcial del código

Patrón Qué ignora
tempCodeRunnerFile.py Archivo temporal para la ejecución parcial del código

Cómo usar este .gitignore para Python

  1. Copia las reglas de Python de arriba o descarga el archivo directamente.
  2. Crea un archivo llamado .gitignore en la raíz del repositorio Git y pega las reglas.
  3. Si Git ya rastrea alguno de esos archivos, ejecuta git rm -r --cached . y crea otro commit: Git solo aplica las reglas de exclusión a los archivos que no rastrea.
  4. Incluye el .gitignore en un commit para que todo el equipo comparta las mismas reglas.

Otras plantillas .gitignore de Lenguaje

Ver todas las plantillas de Lenguaje