Deleting a Specific Commit (Using git reflog and cherry-pick)

You can also use the reflog and cherry-pick commands to remove a specific commit.

  • Find the commit hash you want to revert to using git reflog:
git reflog
  • Reset to the commit just before the one you want to delete:
git reset --hard <commit_hash>
  • Cherry-pick the commits you want to keep:
git cherry-pick <commit_hash>

How to Delete Local Commit in Git?

Deleting a local commit in Git can be done in a few ways, depending on whether the commit is the most recent one or if it is further back in the commit history. Here’s an article on how to delete a local commit in Git, tailored to whether you want to keep the changes made in the commit or discard them entirely:

Table of Content

  • Keeping the Changes (Soft Reset)
  • Discarding the Changes (Hard Reset)
  • Handling Pushed Commits
  • Deleting a Specific Commit (Using git reflog and cherry-pick)
  • Summary

Similar Reads

Keeping the Changes (Soft Reset)

If you want to undo the commit but keep the changes in your working directory for further modification, you can use a soft reset:...

Discarding the Changes (Hard Reset)

If you want to completely remove the commit and all changes associated with it, you can perform a hard reset:...

Handling Pushed Commits

If the commit has already been pushed to a remote repository, you will need to handle the remote history separately, typically involving a force push. This should be done with caution to avoid disrupting others’ work....

Deleting a Specific Commit (Using git reflog and cherry-pick)

You can also use the reflog and cherry-pick commands to remove a specific commit....

Summary

Soft Reset:...

Contact Us