Очистка проектов от временных файлов и папок
Project description
🧹 Project Cleaner
Скрипт для очистки проекта от временных файлов, папок виртуальных окружений и прочего мусора.
Установка
# Установка из PyPI
pip install project-cleaner
# Установка из репозитория (для разработки)
pip install -e .
Что удаляет
- Виртуальные окружения:
venv,env,.env,.venv - Кэши Python:
__pycache__,.pytest_cache,.mypy_cache,.ruff_cache - Временные файлы:
.pyc,.pyo,.log,.tmp,.temp,.swp,.swo - Сборки и дистрибутивы:
build,dist,.egg-info,.eggs - Скрытые системные файлы:
.DS_Store,Thumbs.db - Зависимости Node.js:
node_modules - Скомпилированные файлы:
.o,.a,.so,.dll
Использование
# Базовое использование (очистка текущей директории)
project-cleaner
# Тестовый режим (показывает что будет удалено, но реально ничего не удаляет)
project-cleaner --dry-run
# Подробный вывод (показывает каждый удаляемый файл)
project-cleaner -v
# Указание конкретной директории для очистки
project-cleaner /путь/к/вашему/проекту
# Игнорирование определенных паттернов
project-cleaner --ignore "venv$" "node_modules$"
# Вывод отчета в JSON формате (для CI/CD и DevOps задач)
project-cleaner --dry-run --json > report.json
# Создание резервной копии перед удалением
project-cleaner --backup
Расширенные функции
JSON-отчет
Для использования в CI/CD пайплайнах и автоматизации:
project-cleaner --dry-run --json > report.json
Отчет содержит детальную информацию о найденных файлах, их размерах и статусе удаления.
Резервное копирование
Если вы беспокоитесь о случайном удалении важных файлов:
project-cleaner --backup
Создает ZIP-архив всех удаляемых файлов в .trash_backup.zip перед их удалением.
Файл .cleanignore
Аналог .gitignore, позволяет указать файлы и папки, которые не должны удаляться:
- Создайте файл
.cleanignoreв корне проекта - Добавьте в него пути (относительно корня проекта), которые не нужно удалять:
# Это комментарий
node_modules/important-module
venv/specific-package
temp/important-file.log
Требования
- Python 3.6+
- Не требует дополнительных зависимостей
Безопасность
Перед реальной очисткой рекомендуется запустить скрипт с флагом --dry-run, чтобы увидеть, какие файлы будут удалены.
Разработка
# Клонирование репозитория
git clone https://github.com/admin/project-cleaner.git
cd project-cleaner
# Установка в режиме разработки
pip install -e .
# Запуск тестов
pytest
# Сборка пакета
python setup.py sdist bdist_wheel
# Публикация на PyPI
twine upload dist/*
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file project_cleaner-0.1.0.tar.gz.
File metadata
- Download URL: project_cleaner-0.1.0.tar.gz
- Upload date:
- Size: 6.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
65891eedfa263c9db2f8439fe7c460f1f4cb550751d8c1923933d7ed2266ca69
|
|
| MD5 |
45982601e4e4721779b395a1aa70ff94
|
|
| BLAKE2b-256 |
fc2133eef7dc4b1da2aff33e0cb7ba3c6c23b2269d85eb3af7bb5d1f4d033431
|
File details
Details for the file project_cleaner-0.1.0-py3-none-any.whl.
File metadata
- Download URL: project_cleaner-0.1.0-py3-none-any.whl
- Upload date:
- Size: 7.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1e0cc67474f7078631e57fa42091bbbc584a1e03cb4e16a72910940db289ba31
|
|
| MD5 |
6e97bda27349d48b03ca1d5575f9a0f1
|
|
| BLAKE2b-256 |
513f69abb60afcb0435a67d31a0f7f39012f3167c92a54015b88faef8a9500b3
|