Skip to main content

gst MIT License Tests Coverage

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

Initial git status

$ gst 1            # Get file path by reference

File reference output

$ gst -a 0         # Add files to staging area

After adding file

$ gst -r 0         # Reset staged changes

After reset

$ gst -c 1         # Checkout files to revert changes

After checkout

$ gst -D 2         # Delete files at index

After delete

$ gst -d 1         # View file differences

Git diff output

$ 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.

Metadata

Release files for gst 0.1.13

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for gst 0.1.13
File Size Uploaded
gst-0.1.13.tar.gz 18.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for gst 0.1.13
File Interpreter ABI Platform
gst-0.1.13-py3-none-any.whl Python 3 none any Details

Total release size: 26.8 kB

Release files / gst-0.1.13.tar.gz

Download URL gst-0.1.13.tar.gz
Size 18.4 kB
Tags Source
SHA-256 checksum
How to use checksums
38bcdcb1ce385b6cbe162e5df404e697db79eb0be9b5e8b3355508eb9af54157
BLAKE2b-256 checksum
How to use checksums
38ca698f878599c20d11e38bdc493593b4d8d5a332671e805aed74616835c549
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.8.20

Release files / gst-0.1.13-py3-none-any.whl

Download URL gst-0.1.13-py3-none-any.whl
Size 8.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c1b4cbe7a372b6ebfb531dab6f515fb461f799bed62605bbfad07acb220ca8f7
BLAKE2b-256 checksum
How to use checksums
dedf1ddefac1aab880092f4e6cf7f26448011af6d841faf90045aa97b1e31220
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.8.20

Release history Release notifications | RSS feed

This release

0.1.13 This release

2 release files

0.1.12

2 release files

0.1.11

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

1 release file

0.1.6

1 release file

0.1.5

1 release file

0.1.4

1 release file

0.1.3

1 release file

0.1.2

1 release file

0.1.1

1 release file

0.1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page