Skip to main content

A CLI tool for displaying files tree with Git integration

Project description

RepoTree

A command-line tool for displaying files tree with Git integration. This tool helps you visualize your project's file structure with support for Git-tracked files and .gitignore rules.

Features

  • Display files tree structure
  • Git integration (show only tracked files)
  • Respect .gitignore rules
  • Show/hide hidden files
  • Custom ignore patterns
  • Configurable depth limit

Installation

pip install repotree

Usage

repotree [OPTIONS] [DIRECTORY]

Options

  • -d, --depth DEPTH: Maximum depth of the tree (default: 0 for unlimited)
  • -a, --all: Show hidden files
  • -g, --git-only: Show only Git tracked files
  • --respect-gitignore: Respect .gitignore rules (default: True)
  • --no-respect-gitignore: Don't respect .gitignore rules
  • -i, --ignore PATTERN: Ignore files/directories matching pattern

Examples

Display tree for current directory:

repotree

Show tree with hidden files:

repotree -a

Show only Git tracked files:

repotree -g

Limit tree depth to 2 levels:

repotree -d 2

Ignore specific patterns:

repotree -i node_modules -i "*.pyc"

Development

  1. Clone the repository:
git clone https://github.com/Eng-Elias/repotree.git
cd repotree
  1. Create a virtual environment:
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
  1. Install development dependencies:
make install-dev
  1. Build the package:
make build
  1. Clean build artifacts:
make clean  # Automatically detects your OS
  1. Publish to PyPI:
make publish

License

This project is licensed under the MIT License - see the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

repotree-0.1.0.tar.gz (6.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

repotree-0.1.0-py3-none-any.whl (6.9 kB view details)

Uploaded Python 3

File details

Details for the file repotree-0.1.0.tar.gz.

File metadata

  • Download URL: repotree-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.2

File hashes

Hashes for repotree-0.1.0.tar.gz
Algorithm Hash digest
SHA256 ef6d25232f9a84a09de6a9ed21af67f2b6fe0039d37e3a0acee9888e94a89abd
MD5 e69b34040bd4a45504409e30e1a85862
BLAKE2b-256 ce1efded9d648c3469afc35dbfe992223e3cf8c5d75e7f6baa8a16bc9e21ad4a

See more details on using hashes here.

File details

Details for the file repotree-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: repotree-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 6.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for repotree-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7f083ae35d5833666cdf3bfc221c530622f9a8cc16d2ddd04fbbb8fc5da18ff6
MD5 5b79977434a2a75f9f6d362f66b831c0
BLAKE2b-256 0ba2bde3d0b8efaf26e5ae4da3f690959a55c18a36a1d12610e50147b635f616

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page