And now you can merge branch B to branch A. The above command will revert the E’ commit. To do this, you have to revert the ‘revert commit‘. Because it is been reverted in E’.Īssume after sometimes, you have made some changes to branch B and now you are fine with merging that branch. In the above example, you can’t merge branch B to branch A again. You have to revert the ‘revert commit‘ if you need to merge back the branch. Reverting a merge commit means you are inverting all the changes from the merge branch so that you can’t merge the branch again. If you have not pushed the commit yet, you can just: git reset -hard HEAD2 (HEAD2 to remove your original commit and your 'revert' commit). So the git history will be like A - B - C - E - F - E' (branch A) This will revert all commits from the merge branch. You have to mention the parent branch number. And if you run git revert E then git will throw a warning. In this above case, E is the merge commit. So when you are reverting a merge commit you have to specify whether you need to revert changes of the parent-A branch or the parent-B branch. The parent-B branch is merged into the parent-A branch. When there is a merge there are two branches included. Reverting a merge commit is somewhat tricky. Reset will rewind your current HEAD branch to the specified revision. In this case, the git history is very clean and everyone reading the git history will understand that the particular commit has reverted for some reason. In these cases, the 'reset' command is your best friend: git reset -soft HEAD1. This is one of the advantages of git revert. And changes made by E is no longer present in the working directory. But you can see that in the git history commit E is also present. So you need to pass the commit you need to revert.Īnd after reverting E the commit history will be changed as below A - B - C - D - E - E'Į’ is the reverted commit. Git revert will always take a commit hash. You have decided to go with the git revert. So you have decided to undo the changes that E did. But unlike other undo commands, git revert will introduce a new commit that has the inverted changes.įor example, consider the below git history A - B - C - D - EĪssume, E is the bad commit and you no longer need those changes. Be sure to only do this when you're sure you don't need these changes anymore.The git revert command is used to ‘undo‘ the changes you have made in the past. If you don't want to keep these changes, simply use the -hard flag. After running the command, you'll find the changes as uncommitted local modifications in your working copy. Note the -soft flag: this makes sure that the changes in undone revisions are preserved. In our example above, we'd like to return to the one before the current revision - effectively making our last commit undone. In these cases, the "reset" command is your best friend: $ git reset -soft HEAD~1 because you'd like to restructure it extensively - or even discard it altogether! However, of course, there a tons of situations where you really want to undo that last commit. Introduction: What if you accidentally committed the wrong files to Git, but haven’t pushed the commits to the server yet. Download Now for Free Undoing the Last Commit Undo changes after they are pushed to a remote repository.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |