A CLI tool to scan directories for Git repositories and display their status information.
Project description
gits-statuses
A CLI tool for scanning directories and displaying Git repository status information. This tool provides a comprehensive overview of all your Git repositories in a clean, tabular format.
Prerequisites
Install
Note: This CLI tool will eventually be published to PyPi but for now, will need to be manually installed.
# Clone the repository
git clone https://github.com/nicolgit/gits-statuses.git
# Change into the directory
cd gits-statuses/python-pypi/
# Install the package
uv run pip install .
# Activate virtual env
source .venv/bin/activate # macos
.venv\Scripts\activate # windows
# Verify installation
gits-statuses --version
Usage
Basic Commands
# Basic usage - scan current directory
gits-statuses
# Detailed view with remote URLs and total commits
gits-statuses --detailed
# Scan a specific directory
gits-statuses --path /path/to/projects
# Show help
gits-statuses --help
Examples
Standard view (shows only repositories with changes):
Repository | Branch | Ahead | Behind | Changed | Untracked
-------------------------------------------------------------
gits-statuses | main | 1 | | 1 | 1
my-project | dev | 2 | | 3 | 2
web-app | main | | 2 | 1 |
Summary:
Total repositories: 5
Repositories with changes: 3
Repositories ahead of remote: 2
Repositories behind remote: 1
Repositories with untracked files: 2
Detailed view (shows all repositories):
Repository | Branch | Ahead | Behind | Changed | Untracked | Total Commits | Status | Remote URL
---------------------------------------------------------------------------------------------------------------
api-service | main | | | | | 45 | Clean | https://github.com/user/api-service
gits-statuses | main | 1 | | 1 | 1 | 9 | ↑1 ~1 ?1 | https://github.com/nicolgit/gits-statuses
my-project | dev | 2 | | 3 | 2 | 67 | ↑2 ~3 ?2 | https://github.com/user/my-project
utils-lib | main | | | | | 23 | Clean | https://github.com/user/utils-lib
web-app | main | | 2 | 1 | | 102 | ↓2 ~1 | https://github.com/user/web-app
Summary:
Total repositories: 5
Repositories with changes: 3
Repositories ahead of remote: 2
Repositories behind remote: 1
Repositories with untracked files: 2
Status Symbols
- ↑n: n commits ahead of remote
- ↓n: n commits behind remote
- ~n: n changed files (modified/added/deleted)
- ?n: n untracked files
- Clean: Repository has no pending changes
Examples:
↑2 ~1 ?3= 2 commits ahead, 1 changed file, 3 untracked files↓1 ~2= 1 commit behind, 2 changed filesClean= No changes, fully synchronized
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 gits_statuses-0.0.4.tar.gz.
File metadata
- Download URL: gits_statuses-0.0.4.tar.gz
- Upload date:
- Size: 9.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.21
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2904d75860caa863b7bf2ed40e233bd3ca381fa99843460fcccf46f94fcac262
|
|
| MD5 |
4a59eeb8e822742f8a873b6a6e082031
|
|
| BLAKE2b-256 |
dec6df51f3b8cf7fd9dcb1a868973865c024775d23065c714d508a61f659c9d8
|
File details
Details for the file gits_statuses-0.0.4-py3-none-any.whl.
File metadata
- Download URL: gits_statuses-0.0.4-py3-none-any.whl
- Upload date:
- Size: 9.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.21
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cb9c3c5d4d479d08ae2b78767fb4cfcd1180063b3ea755943f67df49e09d9d49
|
|
| MD5 |
666aad0287f03f4e0f06b20106f5d795
|
|
| BLAKE2b-256 |
0cb1b8b7027a8683dce7733ef6f9a37e58baedbe3850f14deaa1a734fcbd8107
|