Git revert local commits
When a software engineer or a web developer uses Git, it is obvious that he pushes a lot of code and commits to the Git repository every day, and while doing so, the need to undo or revert a particular commit or a set of commits arises from time to time in a team environment.
In this block, we will understand the possibilities available with Git programs and commands to undo after committing to a local branch.
This document tries to understand what happens to the commits we make and what kind of undo we can do to recover commits that have not yet been synced with the remote branch.
Before dealing with this situation, we should make sure that we need it and want to modify the commit files and information. Because in some cases, we just want to edit our commits, which can be done with the Git command git amend.
But if we want to undo a command, this guide is the best place to learn about it. Let’s learn how to do it efficiently using the following Git commands.
Use git reset to undo committed changes
There are multiple situations where we want to undo the last commit, the easiest way to solve this problem and undo the last Git commit is to use the command git reset
and add the --soft flag. This feature of Git preserves the changes to our files in the local branch.
To do this, we have to specify the commit we want to undo, which is HEAD~1; Here, we want to undo the last commit, as this is a common practice where developers are most likely to need to undo their last commit. But we can mention any commit we want to undo.
For those situations, git reset
the commands listed below are the best choice.
$ git reset --soft HEAD~1
With the reset option, our current HEAD branch will be projected to the specified revision and back to one commit before the most recent revision, which makes our last commit undone and the changes will automatically come to our file modifications section.
With the help of the flag --soft the changes we make will remain in the file status section and will not be lost.
Also, if we do not want to keep our changes and we are sure that we do not need them anymore, then we will use the flag --hard instead of the flag --soft .
This will permanently undo the changes and all content will be lost. To permanently remove the changes, use the following command.
$ git reset --hard HEAD~1
Use git revert to undo committed changes
git revert
command is specifically used to develop a new commit that helps us revert the changes of a specified commit. This command is famous for completely reverting a commit without deleting it.
If commits have already been pushed to the remote repository, then using git revert
is the best and safest option as it will not overwrite the commit history.
The command to revert the last commit is as follows.
git revert <commit to revert>
The name of the commit is the commit ID that we want to revert; it can be reverted through git's command, that is, git log . Most developers prefer git revert over git reset because it undoes the changes with the help of a new command that performs the same undo operation.
It does not discard or overwrite previous commits. Reset discards all unattractive commits and also changes the commit history.
Now it's up to you to decide which command is best for your situation.
For reprinting, please send an email to 1244347461@qq.com for approval. After obtaining the author's consent, kindly include the source as a link.
Related Articles
Git installation and establishment of local warehouse service
Publish Date:2025/04/05 Views:89 Category:Git
-
Git is a distributed version control system: the client does not only extract the latest version of the file snapshot, but also completely mirrors the original code repository. It has the following advantages: a. Since every extraction oper
git remote operation——multiple remote repositories for one project
Publish Date:2025/04/05 Views:131 Category:Git
-
Multiple remote repositories for a git project In our git project, the command to operate the remote repository information is $ git remote # 查看当前所有的远程仓库的名称 $ git remote -v # 查看远程仓库的名称和远程仓
Git cherry pick command usage
Publish Date:2025/04/05 Views:190 Category:Git
-
git cherry-pick is a powerful command that allows us to select an arbitrary Git commit by reference and attach it to the HEAD of the current working branch. Cherry picking is the act of picking a commit from one branch and applying it to an
Comparison between Git merge and Git rebase
Publish Date:2025/04/05 Views:171 Category:Git
-
The git rebase command may seem like Git wizardry to beginners, but if used carefully, it can actually make life easier for your development team. In this article, we compare git rebase with the related git merge command and identify all th
How to fix Git error Error: src refspec master does not match any
Publish Date:2025/04/05 Views:124 Category:Git
-
When using Git, we may encounter the error "src refspace master does not match any". Here's what the error means and how to fix it. What does src refspec master does not match any Mean in Git mean? We may encounter this error when we try to
Rebase local branch when pulling changes from remote repository branch in Git
Publish Date:2025/04/05 Views:144 Category:Git
-
This article will cover the basics of rebasing your local branch when pulling changes from a remote repository branch in Git. We use the version control system Git to track changes made to files. We commit changes in a local branch in our l
Undo Git Stash
Publish Date:2025/04/04 Views:187 Category:Git
-
This article explains how to make and save changes to a repository. Git allows you to save changes locally and push them to a server when needed. In Git, we don't use the term save , but commit . We use git add , git commit , and git stash
View a list of cache entries in Git
Publish Date:2025/04/04 Views:59 Category:Git
-
We often need to pause our work and focus on something else in our development environment. Therefore, we may need to temporarily save our current work and focus on a different one. We may want to resume our original work later. git stash T
Git stores specific files
Publish Date:2025/04/04 Views:115 Category:Git
-
This article will cover storing changes to only specific files in Git. In Git, when we make some changes in our working tree, we may have some changes which may or may not be staged in our local repo. We may now wish to save these changes f