CLI to scan directories for git repositories and get a quick overview of their status
Project description
ggit
A CLI to scan directories for git repositories and get a quick overview of their status.
Install
uv tool install ggit
Usage
List repositories
Scan the current directory for git repos:
ggit list
Scan a specific directory:
ggit list ~/code
Example output:
┌──────────┬─────────────────────┬────────┬──────────┬────────────┬─────────────┐
│ Name │ Path │ Branch │ Branches │ Status │ Last Commit │
├──────────┼─────────────────────┼────────┼──────────┼────────────┼─────────────┤
│ my-app │ /home/user/my-app │ main │ 3/5 │ ● 2M 1? │ 2026-02-25 │
│ dotfiles │ /home/user/dotfiles │ master │ 1/1 │ ✓ │ 2026-02-20 │
│ api │ /home/user/api │ feat │ 4/8 │ ● 1+ ↑2 │ 2026-02-27 │
└──────────┴─────────────────────┴────────┴──────────┴────────────┴─────────────┘
Found 3 repositories
Status symbols: ✓ clean, M modified, + staged, ? untracked, ↑ ahead of remote.
Filter dirty or clean repos
# Only repos with uncommitted or unpushed changes
ggit list ~/code --dirty
# Only clean repos
ggit list ~/code --clean
Filter by branch count
# Repos with at least 5 local branches (time to clean up?)
ggit list ~/code --min-local-branches 5
Sort and reverse
ggit list ~/code --sort date --reverse
Sort by name (default), branch, or date.
Output as JSON
ggit list ~/code --json
Quiet mode
Output only repository paths, useful for piping:
ggit list ~/code --dirty --quiet | xargs -I{} git -C {} status
Get detailed info on a single repo
ggit info ./my-project
Repository: my-project
Current branch: main
Local branches: main, feat/auth, fix/typo
Remote branches: origin/main, origin/feat/auth
Last commit: 2026-02-27
Last fetch: 2026-02-26
Authors: Alice, Bob
License
MIT
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
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 ggit-0.2.0.tar.gz.
File metadata
- Download URL: ggit-0.2.0.tar.gz
- Upload date:
- Size: 20.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
80f22ae13ee8e1ec40562080132e2dae12ef0b03ad1650774995e2b98c96381d
|
|
| MD5 |
de8610d99306a961c020cde56280419a
|
|
| BLAKE2b-256 |
bb9062233aac22deeace94a9b7fda43b26f93a3ffcce5c4fb7549539f82579e2
|
Provenance
The following attestation bundles were made for ggit-0.2.0.tar.gz:
Publisher:
python-publish.yml on denrou/ggit
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ggit-0.2.0.tar.gz -
Subject digest:
80f22ae13ee8e1ec40562080132e2dae12ef0b03ad1650774995e2b98c96381d - Sigstore transparency entry: 1009020860
- Sigstore integration time:
-
Permalink:
denrou/ggit@64db4264a62e5c48f34dfe179dce96b067130c9f -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/denrou
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@64db4264a62e5c48f34dfe179dce96b067130c9f -
Trigger Event:
release
-
Statement type:
File details
Details for the file ggit-0.2.0-py3-none-any.whl.
File metadata
- Download URL: ggit-0.2.0-py3-none-any.whl
- Upload date:
- Size: 7.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f46626baae38c328d227dc1637dcc7035ac3fcae299ff590745ed68635c29a8a
|
|
| MD5 |
f3c2934cac4d3120d67b0ae5241ec29b
|
|
| BLAKE2b-256 |
5e7f271838f417d2e9ffe85f03b90dae2747ff3937d4f02da3e25d7e4be720b1
|
Provenance
The following attestation bundles were made for ggit-0.2.0-py3-none-any.whl:
Publisher:
python-publish.yml on denrou/ggit
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ggit-0.2.0-py3-none-any.whl -
Subject digest:
f46626baae38c328d227dc1637dcc7035ac3fcae299ff590745ed68635c29a8a - Sigstore transparency entry: 1009020927
- Sigstore integration time:
-
Permalink:
denrou/ggit@64db4264a62e5c48f34dfe179dce96b067130c9f -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/denrou
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@64db4264a62e5c48f34dfe179dce96b067130c9f -
Trigger Event:
release
-
Statement type: