Because version control doesn't have to be a shitshow

Git Workflows, Simplified

SHTT provides five essential commands that cover 90% of your daily Git workflow. No more memorizing dozens of flags and options – just the operations you actually need.

shtt dump

See all changes in your working directory at a glance. Shows both modified tracked files and untracked files in clean, porcelain format.

$ shtt dump
M src/main.rs
A src/new_file.rs
? untracked.txt

shtt save

Commit all changes (tracked and untracked) and push to origin in one command. Optionally provide a commit message or be prompted for one.

$ shtt save -m "Add new feature"
Created commit: a1b2c3d...
Pushed changes to origin/main

shtt pull

Pull latest changes from origin, or clone a repository if you're not in one yet. Smart enough to know which operation you need.

$ shtt pull
Fast-forwarding to origin/main...
# OR
$ shtt pull git@github.com:user/repo.git

shtt drop

Create and push semantic version tags. Automatically increments from the highest existing tag and supports major, minor, or patch bumps.

$ shtt drop patch
Created tag: v1.2.4
Pushed tag v1.2.4 to origin

shtt wipe

Nuclear option: reset everything to match origin exactly. Removes local commits, untracked files, and empty directories. Like a fresh clone.

$ shtt wipe
Reset repository to match origin/main
Removed all untracked files

Your Daily Workflow

1. Check Status

See what's changed since your last commit

shtt dump

2. Save Changes

Commit and push everything in one go

shtt save -m "Fix bug"

2.5 Drop a New Release

Automatically bump your tag version with SemVer

shtt drop major

3. Get Updates

Pull the latest changes from your team

shtt pull

4. Start Fresh

When things get messy, start clean

shtt wipe

One-line Installer!

cargo install --git https://github.com/shtt-show/shtt
View on GitHub Read the Docs