bitranox/igittigitt

31 stars · Last commit 2026-10-25

Git-compatible .gitignore parser and path filter for Python: library and streaming CLI, include/whitelist mode, shutil.copytree filter, memory-bounded for millions of paths. Ships as a Claude Code plugin too.

README preview

# igittigitt

<!-- Badges -->
[![CI](https://github.com/bitranox/igittigitt/actions/workflows/default_cicd_public.yml/badge.svg)](https://github.com/bitranox/igittigitt/actions/workflows/default_cicd_public.yml)
[![CodeQL](https://github.com/bitranox/igittigitt/actions/workflows/codeql.yml/badge.svg)](https://github.com/bitranox/igittigitt/actions/workflows/codeql.yml)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
[![Open in Codespaces](https://img.shields.io/badge/Codespaces-Open-blue?logo=github&logoColor=white&style=flat-square)](https://codespaces.new/bitranox/igittigitt?quickstart=1)
[![PyPI](https://img.shields.io/pypi/v/igittigitt.svg)](https://pypi.org/project/igittigitt/)
[![PyPI - Downloads](https://img.shields.io/pypi/dm/igittigitt.svg)](https://pypi.org/project/igittigitt/)
[![Code Style: Ruff](https://img.shields.io/badge/Code%20Style-Ruff-46A3FF?logo=ruff&labelColor=000)](https://docs.astral.sh/ruff/)
[![codecov](https://codecov.io/gh/bitranox/igittigitt/graph/badge.svg?token=UFBaUDIgRk)](https://codecov.io/gh/bitranox/igittigitt)
[![Maintainability](https://qlty.sh/badges/041ba2c1-37d6-40bb-85a0-ec5a8a0aca0c/maintainability.svg)](https://qlty.sh/gh/bitranox/projects/igittigitt)
[![security: bandit](https://img.shields.io/badge/security-bandit-yellow.svg)](https://github.com/PyCQA/bandit)

`igittigitt` is a spec-compliant `.gitignore` parser for Python - a library **and** a
command-line tool. Point it at `.gitignore` rules (or pass rules as strings) and ask
whether a path is ignored, or use it directly as the `ignore=` callback of
`shutil.copytree`.

## Features

View full repository on GitHub →