100

I've pushed a commit and I want to revert changes introduced by this commit by applying and committing a reversed patch. How do I do it?

Dziamid
  • 10,647
  • 11
  • 66
  • 103

3 Answers3

143

Use

git revert HEAD

This will create a patch that reverts the last commit and commit that patch as a new commit.

If you want to revert a specific earlier version, use

git revert <revision>

see also: http://schacon.github.com/git/git-revert.html

Tom
  • 4,662
  • 24
  • 31
pilif
  • 12,298
  • 5
  • 33
  • 30
50

Sounds like you want to use git-revert.

https://www.kernel.org/pub/software/scm/git/docs/git-revert.html

Laith Shadeed
  • 4,152
  • 2
  • 22
  • 27
Kris K.
  • 988
  • 9
  • 7
  • 1
    This is not a good option if you use a PR flow; in those cases you will want to make a new commit that put the changes from one commit back to what they were. – b01 Aug 23 '17 at 01:19
4

simply use

for committed file:

git revert <SHA1 ID>

for non-committed file:

git reset --hard HEAD
Amit
  • 1,731
  • 17
  • 34