Recently I was making some changes to a local git repository and I committed some changes and files that I should not have committed.
I did not run git push
so the changes were only committed to my local Git repository.
So I decided to share how I reverted the last commit here with the community in case someone gets in the same situation.
So rather than wiping out your whole local repo and cloning a fresh copy, you could do the following:
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.
Sign up for Infrastructure as a Newsletter.
Working on improving health and education, reducing inequality, and spurring economic growth? We'd like to help.
Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.
Of course, as with everything, there are multiple solutions.
But what I would usually do in this case in order to undo my latest commit and then commit my new changes is the following.
After that if you run
git log
you will see the history of everything that has been committed to a repository.To undo the last commit, just run the following:
The above command will reset back with 1 point.
Note: the above would undo your commit but it would keep your code changes if you would like to get rid of the changes as well you need to do a hard reset:
git reset --hard HEAD~1
After that make your new changes
Once you are done with the changes run
git add
to add any of the files that you would like to be included in the next commit:git commit
as normal to commit your new changes:Here’s a screenshot of the process:
Another approach would be to use
git revert COMMIT_ID
instead.Here is a quick video demo on how to do the above:
Hope that this helps! Regards, Bobby
When you spend a lot of time using git, you forget how careful you have to be with the git commits. Even if you are a beginner or an expert, I’m sure almost everyone has made changes to a local git repository and committed some changes and files that you didn’t want to commit.
Don’t worry, it happens to the best of us. In this post, you will learn how to undo those changes.
How to undo if you haven’t run
git push
If you have not run
git push
so that the changes were only committed to your local Git repository. That means there are a few solutions.Let’s say that you made some changes and you committed the changes:
After that, if you run
git log
you will see the history of everything that has been committed to a repository. To undo the last commit, you just need to run the following command:The command above will reset back with 1 point. This means that it will undo your commit but it will keep your code changes.
So if you would like to get rid of the changes as well you just need to do a hard reset. In order to do a hard reset run the command below:
After you have done this, make your new changes.
Once you are done with the changes run
git add
. This will add any of the files that you would like to be included in the next commit.Then use the
git commit
command as normal to commit your new changes.After that it’s always a good thing to check your history again by running:
Another approach would be to use
git revert COMMIT_ID
instead.Conclusion
Mistakes happen to everybody, so it’s a good thing to know how to fix your mistakes. Remembering the things in this post will be very helpful and will make your life much easier.