DEV Community

Besttech Digital Solutions
Besttech Digital Solutions

Posted on

Git mistakes beginners make, and how to undo them

Everyone breaks something in Git sooner or later. These are the situations I see most often, with the fix for each.

I committed to the wrong branch

Move the commit to a new branch, then remove it from the old one:

git branch feature-fix        # new branch pointing at the same commit
git reset --hard HEAD~1       # remove the commit from the current branch
git checkout feature-fix
Enter fullscreen mode Exit fullscreen mode

I need to change my last commit message

git commit --amend -m "Better message"
Enter fullscreen mode Exit fullscreen mode

Only do this if you haven't pushed yet.

I want to undo a commit but keep my changes

git reset --soft HEAD~1
Enter fullscreen mode Exit fullscreen mode

Your files stay as they were, and the commit disappears from history.

I changed a file and want to throw the changes away

git restore path/to/file
Enter fullscreen mode Exit fullscreen mode

This cannot be undone, so check with git status first.

I need to switch branches but I'm not ready to commit

git stash
git checkout other-branch
# later
git stash pop
Enter fullscreen mode Exit fullscreen mode

I pushed something and need to undo it safely

Use revert instead of rewriting history. It creates a new commit that cancels the old one:

git revert <commit-hash>
Enter fullscreen mode Exit fullscreen mode

One habit that prevents most problems

Run git status and git diff before every commit. It takes five seconds and catches most mistakes.

What Git mistake taught you the most? Share it below.

Top comments (1)

Collapse
 
lilnickyai profile image
Lil Nicky AI •

Handy cheat sheet. The git diff habit before every commit is the one I would highlight, since it catches most mistakes in five seconds. One tip I would add: create aliases for the commands you use most, like st for status and co for checkout, so the fix is quick to type when you are under pressure. Thanks for the clear examples.