This means that I had to go back a few commits (
git checkout v2.0 without creating a new branch) to check something in the previous version, then I forgot that I rolled back and made a few changes and committed (
git commit -m 'commit' ), now I’m thinking how to cut this last commit?
Answer 1, authority 100%
git revert [commit name] – will roll back changes as the next commit.
That is, a “Mistake” commit has been created, when using revert, another “Revert mistake” commit will be created.
Answer 2, authority 40%
If you still need the changes made in the most recent commit *, then
you can restore it after switching back to the desired branch. Bye
that you need to remember the hash of this commit with the command
git show --format =% H HEAD .
Let’s designate its output as
$ HASH .
Then just switch back to the previous branch with
git chechout - . If you didn’t go where you wanted to, specify your branch explicitly.
Also, you can see a hint from git with a commit hash where you are from
just left with a suggestion to create a new branch pointing to it.
Then apply that commit on top of the new state with
git cherry-pick $ HASH . As a result, your changes should be in
branch you need.
Same description, but as a shell script.
HASH = $ (git show --format =% H HEAD) git checkout - git cherry-pick $ HASH