# git-filter-repo ## Docs - [Command Line API Overview](https://mintlify.wiki/newren/git-filter-repo/api/cli-overview.md): Overview and categorization of all git-filter-repo command-line options - [Commit Modification Options](https://mintlify.wiki/newren/git-filter-repo/api/commit-options.md): Options for modifying commit messages, author information, and commit ancestry - [Content Editing Options](https://mintlify.wiki/newren/git-filter-repo/api/content-options.md): Options for modifying file contents and removing blobs - [Output and Control Options](https://mintlify.wiki/newren/git-filter-repo/api/output-options.md): Options for controlling where filtering occurs, output behavior, and operational modes - [Path Filtering Options](https://mintlify.wiki/newren/git-filter-repo/api/path-options.md): Options for selecting and filtering files and directories - [Callbacks](https://mintlify.wiki/newren/git-filter-repo/api/python-callbacks.md): Understanding and using the callback system - [Data Structures](https://mintlify.wiki/newren/git-filter-repo/api/python-data-structures.md): Git object representations in the Python library - [Filtering APIs](https://mintlify.wiki/newren/git-filter-repo/api/python-filtering.md): RepoFilter and FilteringOptions classes for repository filtering - [Python Library Overview](https://mintlify.wiki/newren/git-filter-repo/api/python-overview.md): Using git-filter-repo as a Python library for advanced repository filtering - [Reference Renaming Options](https://mintlify.wiki/newren/git-filter-repo/api/ref-options.md): Options for renaming branches, tags, and other Git references - [Path Renaming Options](https://mintlify.wiki/newren/git-filter-repo/api/rename-options.md): Options for renaming files, directories, and organizing repository structure - [Design Rationale](https://mintlify.wiki/newren/git-filter-repo/concepts/design-rationale.md): The 12 design goals that guided the creation of git-filter-repo - [Fresh Clone Requirements](https://mintlify.wiki/newren/git-filter-repo/concepts/fresh-clone.md): Why git-filter-repo requires a fresh clone and how to override this safety check - [How It Works](https://mintlify.wiki/newren/git-filter-repo/concepts/how-it-works.md): Understanding the fast-export | filter | fast-import pipeline that powers git-filter-repo - [Cheat Sheet](https://mintlify.wiki/newren/git-filter-repo/examples/cheat-sheet.md): Quick reference for common git-filter-repo operations - [Demo Scripts](https://mintlify.wiki/newren/git-filter-repo/examples/demo-scripts.md): Contributed scripts that demonstrate git-filter-repo's library capabilities - [Real User Scenarios](https://mintlify.wiki/newren/git-filter-repo/examples/user-scenarios.md): Examples from real user issues and use cases - [Advanced Filtering](https://mintlify.wiki/newren/git-filter-repo/guides/advanced-filtering.md): Complex filtering operations using callbacks and advanced techniques - [Basic Filtering](https://mintlify.wiki/newren/git-filter-repo/guides/basic-filtering.md): Learn fundamental filtering operations with git-filter-repo - [Commit Message Rewriting](https://mintlify.wiki/newren/git-filter-repo/guides/commit-message-rewriting.md): Modify commit and tag messages throughout repository history - [Content-Based Filtering](https://mintlify.wiki/newren/git-filter-repo/guides/content-based-filtering.md): Filter and modify file contents throughout repository history - [Library Usage](https://mintlify.wiki/newren/git-filter-repo/guides/library-usage.md): Use git-filter-repo as a Python library for programmatic filtering - [Path-Based Filtering](https://mintlify.wiki/newren/git-filter-repo/guides/path-based-filtering.md): Rename and restructure files and directories in repository history - [Installation](https://mintlify.wiki/newren/git-filter-repo/installation.md): Learn how to install git-filter-repo on your system - [Introduction](https://mintlify.wiki/newren/git-filter-repo/introduction.md): Fast, powerful tool for rewriting git repository history - [Migrating from BFG Repo Cleaner](https://mintlify.wiki/newren/git-filter-repo/migration/from-bfg.md): Complete guide for converting BFG Repo Cleaner commands to git-filter-repo - [Migrating from filter-branch](https://mintlify.wiki/newren/git-filter-repo/migration/from-filter-branch.md): Complete guide for converting filter-branch commands to git-filter-repo - [Quickstart](https://mintlify.wiki/newren/git-filter-repo/quickstart.md): Get started with git-filter-repo in minutes - [Contributing](https://mintlify.wiki/newren/git-filter-repo/resources/contributing.md): Guidelines for contributing to git-filter-repo - [FAQ](https://mintlify.wiki/newren/git-filter-repo/resources/faq.md): Frequently asked questions about git-filter-repo - [Troubleshooting](https://mintlify.wiki/newren/git-filter-repo/resources/troubleshooting.md): Common problems and solutions when using git-filter-repo - [Analyzing Repository](https://mintlify.wiki/newren/git-filter-repo/use-cases/analyzing-repository.md): Analyze your repository to identify large files, bloated history, and optimization opportunities - [Extracting a Subdirectory](https://mintlify.wiki/newren/git-filter-repo/use-cases/extracting-subdirectory.md): Learn how to extract a subdirectory from a repository while preserving its history - [Path Renaming](https://mintlify.wiki/newren/git-filter-repo/use-cases/path-renaming.md): Rename and reorganize files and directories throughout Git history - [Removing Sensitive Data](https://mintlify.wiki/newren/git-filter-repo/use-cases/removing-sensitive-data.md): Safely remove passwords, credentials, and other sensitive information from Git history