git revert all commits to pervious commit

C++
git revert <the_commit_hash>git revert --no-commit <commithash>..HEAD #revert changes in range of commits from head to back to that commit hash$ git revert --no-commit D
$ git revert --no-commit C
$ git revert --no-commit B
$ git commit -m "the commit message"

Source

Also in C++: