I'm using Mercurial.
I've made a few errors with merging and so on, and just want to abandon all changes I have made (this includes changes committed locally, but never pushed).
How do I abandon everything and make my repo the same as the remote repo.
(ie see image, I want to discard those 5 queued up pushes)
*** note rollback only works on the (single) last transaction
*** my specific problem was that I had made changes to several different branches.
In the end I cloned the repo to a new folder
hg clone https://www.mercurial-scm.org/repo mercurial-repo
and then I deleted my old .hg
folder and replaced it with a known good one from the origin.