# Шаблон .gitignore для проектов с Docker Секция docker — базовый минимум. Секции Python/Node/Go — добавить по стеку. **НИКОГДА не игнорировать**: `docker-compose*.yml`, `compose*.yaml`, `Dockerfile*`, `README*`, `*.md`, `*.yml`/`*.yaml` (конфиги), `PLAN.md`, `STATUS.md`, `TODO.md`. ## Docker (всегда, если есть compose/Dockerfile) ``` # --- Docker --- *.pid *.seed *.sock *.swp .dockerignore-tmp ``` > НЕ игнорировать `docker-compose*.yml` — это источник истины деплоя, он в git. > Пропускать `.env*` только если они содержат секреты; `.env.example` — в git. ## Python (pip/venv/poetry) ``` # --- Python --- __pycache__/ *.py[cod] *$py.class *.egg-info/ .eggs/ build/ dist/ .venv/ venv/ env/ .env .pytest_cache/ .mypy_cache/ .ruff_cache/ .coverage htmlcov/ .tox/ .uv/ .ipynb_checkpoints/ ``` ## Node (npm/yarn/pnpm) ``` # --- Node --- node_modules/ npm-debug.log* yarn-error.log* pnpm-debug.log* dist/ build/ coverage/ .env.local .env.*.local .next/ out/ ``` ## Go ``` # --- Go --- /bin/ *.exe *.test *.out coverage.out ``` ## Универсальное (всегда) ``` # --- OS / редакторы --- .DS_Store Thumbs.db *~ .idea/ .vscode/ *.swp *.swo # --- Логи / временное --- *.log logs/ tmp/ temp/ ``` ## Правило проверки Перед `git add -A` проверить `git status` — в списке не должно быть секретов, venv/node_modules, бинарников. Если `.env` реальный с секретами — решение по включению/исключению явно согласовать с пользователем (по умолчанию: игнорить, `.env.example` с заглушками фиксировать в git).