| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Undo ANY git mistake in 3 seconds with a beautiful TUI
Never lose work again. git-time-machine makes git reflog visual, interactive, and actually usable.
You just:
Current solution: Dig through git reflog, copy cryptic hashes, pray you picked the right one.
Better solution: git-time-machine 🎯
Navigate your git history like a time traveler. One key to restore.
cargo install git-time-machinegit clone https://github.com/dinakars777/git-time-machine
cd git-time-machine
cargo install --path .brew install git-time-machine# Launch in any git repository
git-time-machine
# Show all reflog entries (default: last 50)
git-time-machine --all| Key | Action |
|---|---|
| ↑ / k | Move up |
| ↓ / j | Move down |
| Enter | Restore to selected state |
| q / Esc | Quit |
# You ran a bunch of git commands, something broke
# You don't remember the exact sequence
# git reflog shows 50+ cryptic entries
# With git-time-machine:
git-time-machine
# Visually scan the timeline
# See "2h ago - before I started messing around"
# Press Enter, back to working state ✨Why not git reflog? You'd need to:
# You did: rebase, merge, reset, amend, rebase again
# Now you need code from 3 operations ago
# But you don't remember the exact hash
# With git-time-machine:
git-time-machine
# Scroll through visual timeline
# See relative timestamps: "15m ago", "1h ago"
# Find the state you need
# Press Enter to restoreWhy not git reflog | grep? You'd need to:
# Deleted a branch 2 weeks ago
# Need it back but don't remember the commit hash
# git branch -D feature-branch was weeks ago
# With git-time-machine:
git-time-machine --all
# Scroll back through weeks of history
# Find "checkout: moving from feature-branch"
# See the commit hash right there
# Press Enter, then: git checkout -b feature-branchWhy not git reflog --all? You'd need to:
# You committed to the wrong branch
# Then made 3 more commits
# Then realized the mistake
# git revert won't help - you need to go back in time
# With git-time-machine:
git-time-machine
# Find "before I committed to wrong branch"
# Press Enter
# Cherry-pick the commits to the right branchWhy not git reset? You'd need to:
git-time-machine is a wrapper around git reflog that:
It's just git under the hood - no magic, no risk.
You absolutely can! But here's the reality:
| Task | With git commands | With git-time-machine |
|---|---|---|
| Find state from "before I broke it" | git reflog, scan 50+ lines, guess hash, git reset --hard <hash>, hope it's right | Scroll, press Enter |
| Recover deleted branch from 2 weeks ago | git reflog --all | grep branch-name, find hash, git checkout -b, verify | --all flag, scroll, press Enter |
| Undo complex operation sequence | Remember exact commands, count commits, pick right reset flag | Visual timeline, click the "before" state |
| Explore "what if" scenarios | Multiple git reset attempts, risk losing more work | Navigate freely, restore is one keypress |
git-time-machine doesn't replace git - it makes reflog actually usable for humans who:
Think of it as git reflog with a UI that doesn't require a PhD.
Contributions welcome!
Ideas for future versions:
MIT © Dinakar Sarbada
If this saved you once, give it a star! ⭐
Made with ❤️ and Rust | Report Bug | Request Feature
| Back | FazBrowse Home | New Git URL |