JIYIK CN >

Current Location:Home > Learning > OPERATING SYSTEM > Git >

Git revert local commits

Author:JIYIK Last Updated:2025/03/30 Views:

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 resetand 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 resetthe 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 revertcommand 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 revertis 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.

Article URL:

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

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

Scan to Read All Tech Tutorials

Social Media
  • https://www.github.com/onmpw
  • qq:1244347461

Recommended

Tags

Scan the Code
Easier Access Tutorial