So I have been working on this little tool called ugit (and was finally able to release a stable version), the goal is to make it easier for beginner to intermediate git users to undo their last (accidental) git command. Because we are not perfect and commit mistakes.
โOh wait I deleted the auth-jwt branch without merging!! fuckโ
Opens browser
โHow to restore deleted branchโ
Wastes 5 minutes reading the thread,
Brain context switch, losses focus
โAarrgh, Git sucksโ
Failure is a good way to learn something new but how many times are you going to mess up with git, if your ultimate goal is to deliver the new feature in your startup as fast as possible, huh? Git is great but itโs not really good with developer experience (DX).
Yo bhupesh, I can just you know alias this command. Oh cool, good luck remembering that alias after 1 month when you fuck-up again.
If you are in the gang of getting things done, adding ugit might be a good choice for you.
Bhupesh-V / ugit
๐จ๏ธ ugit helps undo git commands. Your damage control git buddy. Undo from 20+ git scenarios.
ugit
Undo your last oopsie ๐๏ธ in git
More Video Demos โจ๏ธ
Undo git add
undo-git-add.mp4
Undo git branch -D
undo-git-branch-delete.mp4
Undo git merge
undo-git-merge.mp4
More Video Demos โจ๏ธ
Undo git add
undo-git-add.mp4
Undo git branch -D
undo-git-branch-delete.mp4
Undo git merge
undo-git-merge.mp4
Why use ugit
?
- You accidentally ran a
git
command you wish to 'undo'. - You want to save time by not searching for how to undo ...
- Your focus is on the problems at hand and not on Git (avoid context switching)
What's in the box?
ugit
/git-undo
supports undoing the following operations, some are a WIP. If you know of any other operations that can be undone and are not in the list, make sure to raise an issue or make a quick PR ๐๏ธ
-
Undo
git commit
-
Undo
git add
-
Undo
git push
-
Undo
git branch -D
(branch delete) -
Undo
git pull
-
Undo
git reset
-
Undo
git tag -d
(tag delete) -
Undo
git stash apply
-
Undo
git
โฆ
Ok enough talking.
What is ugit
?
Itโs just a simple shell script with guided programmatic steps to undo your last git command, powered by FZF built for people who live and work with terminals every day.
Guided Tutorials
Below are some GIF demos of undoing some git operations, the list is long (around 17 scenarios) but I am only demonstrating some common ones.
Undoing git add
Undoing git branch -D
(Restore deleted branch)
Undoing/Restoring file to previous version
Undoing git merge
I donโt like your stupid script
Cool, I mean we are still friends right?? Friends help friends avoid git mistakes, thatโs why I wrote an accompanying text guide on How to undo anything in Git.
Share it with your friends, co-workers. No hard feelings
Peace โ๏ธ
Top comments (4)
That was literally gong through my head for the first half of this post.
Now, I actually want to install this. It's a really smart idea.
I like aliasing commands too
Sometimes commands become complex, half of the time I don't have good enough 3-4 letters aliases (since they are all booked)
I hope ugit helps, contributions/feedback are always welcomed <3
Really like this
Thanks :)
Do provide some feedback though, when you try it
Hop into github.com/Bhupesh-V/ugit/discussi...