Git status tool
Project description
gst

Synposis
gst is short for Git Status - it's a commandline app with some neat features for improving your workflow with git Note that gst is meant for in dark themed terminals
Installation
Install from pip.
pip install gst
Usage
$ gst # View git status
$ gst 1 # Get file path by reference
$ gst -a 0 # Add files to staging area
$ gst -r 0 # Reset staged changes
$ gst -c 1 # Checkout files to revert changes
$ gst -D 2 # Delete files at index
$ gst -d 1 # View file differences
$ gst -e 1 # Open file in editor
# Use file references with other commands
$ cat $(gst 1) # Display contents of file at index 1
$ vim $(gst 1) # Open file at index 1 in vim
Range and selection syntax
All commands that accept REF_RANGE
support flexible selection patterns:
Pattern | Description | Example |
---|---|---|
0,2,4 |
Specific indices | gst -a 0,2,4 |
1:3 |
Range (inclusive) | gst -r 1:3 |
2: |
Unbounded range | gst -c 2: |
0,2:4,6 |
Mixed patterns | gst -D 0,2:4,6 |
Contributing
Contributions are welcome! See CONTRIBUTING.md for development setup, testing guidelines, and how to contribute to the project.
Compatibility
- Linux, Mac, Windows
- Git version >=2
- Python 3.8+ (fully tested and supported)
- Python 3.6, 3.7 (best-effort support with manual testing)
Python Version Support Policy
- Python 3.8+: Fully supported with automated testing in CI/CD
- Python 3.6, 3.7: Best-effort support with periodic manual testing for compatibility
Due to GitHub Actions dropping support for Python 3.6 and 3.7, we can no longer provide automated testing for these versions. However, we will continue to maintain compatibility when possible and provide periodic updates with manual testing to confirm functionality.
Performance Optimization
Since gst
relies on git status
, optimizing git performance will directly improve gst
performance. These settings can provide 50-75% faster operations for large repositories:
# Enable all git performance optimizations
git config core.fsmonitor true # File system monitor (Windows/macOS only)
git config core.untrackedCache true # Cache untracked file detection
git config feature.manyFiles true # Optimize for large repositories
Features:
- FSMonitor: Background file monitoring, up to 75% faster (not supported on Linux)
- Untracked Cache: Faster detection of untracked files
- feature.manyFiles: Optimized index format for repositories with many files
Note: FSMonitor provides the biggest performance boost for large repositories but may add overhead for small repositories.
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
File details
Details for the file gst-0.1.13.tar.gz
.
File metadata
- Download URL: gst-0.1.13.tar.gz
- Upload date:
- Size: 18.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.8.20
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
38bcdcb1ce385b6cbe162e5df404e697db79eb0be9b5e8b3355508eb9af54157
|
|
MD5 |
67d1d4fab9fab9bd6b5bd4c869804071
|
|
BLAKE2b-256 |
38ca698f878599c20d11e38bdc493593b4d8d5a332671e805aed74616835c549
|
File details
Details for the file gst-0.1.13-py3-none-any.whl
.
File metadata
- Download URL: gst-0.1.13-py3-none-any.whl
- Upload date:
- Size: 8.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.8.20
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
c1b4cbe7a372b6ebfb531dab6f515fb461f799bed62605bbfad07acb220ca8f7
|
|
MD5 |
1b78545e8259d15eccddaa7d22530106
|
|
BLAKE2b-256 |
dedf1ddefac1aab880092f4e6cf7f26448011af6d841faf90045aa97b1e31220
|