git revert last commit unpushed

C++
git reset --soft HEAD~1
# Remove ALL commits up to commit hash.
# NB: Make sure these commits have not been pushed.

git reset --hard <commit hash number>
Source

Also in C++: