This blog post will let you know about the process of removing the git commit from git history.
Sample Git log
> git log
38384b3 initial commit
f96751b UI changes
2154131 file added
bf9b9c1 Logic corrections
3e75ab7 Bug fix -> (HEAD)
Remove the commit "file added"
- Rebase in interaction mode one commit above which we want to remove.
> git rebase -i f96751b
- All the commits up to the specified commit will be listed in an order with the prefix "pick". Along with commit messages, the useful commands are available like below.
pick = use commit
reword = use commit, but edit the commit message
edit = use commit, but stop for amending
squash = use commit, but meld into previous commit
fixup = like "squash", but discard this commit's log message
exec = run command (the rest of the line) using shell
drop = remove commit
- Delete the unwanted commits from the file
- Press 'd' twice to delete line (in case of vi editor)
- Save and quit the editor
- esc -> :wq (in case of vi editor)
- If there are any merge conflicts, resolve it and perform rebase continue
- > git rebase --continue
- Once all the merges are completed, perform the push operation
- > git push --force-with-lease origin
Feel free to send your suggestions and comments to email@example.com