【git】git pushを取り消す - tweeeetyのぶろぐ的めも を参考にした.

git commit を取り消すには git reset を使うらしい.

$ git log --oneline
67c6b27 Latest update
f5d997c Merge pull request #1
$ git reset --hard f5d997c
HEAD is now at f5d997c Merge pull request #1
$ git log --oneline
f5d997c Merge pull request #1


$ git push -f
warning: push.default is unset; its implicit value has changed in
Git 2.0 from 'matching' to 'simple'. To squelch this message
and maintain the traditional behavior, use:

  git config --global push.default matching

To squelch this message and adopt the new behavior now, use:

  git config --global push.default simple

When push.default is set to 'matching', git will push local branches
to the remote branches that already exist with the same name.

Since Git 2.0, Git defaults to the more conservative 'simple'
behavior, which only pushes the current branch to the corresponding
remote branch that 'git pull' uses to update the current branch.

See 'git help config' and search for 'push.default' for further information.
(the 'simple' mode was introduced in Git 1.7.11. Use the similar mode
'current' instead of 'simple' if you sometimes use older versions of Git)

Total 0 (delta 0), reused 0 (delta 0)
 + 67c6b27...f5d997c master -> master (forced update)