Our normal process on the team is to merge our feature branches into QA branch, test that branch, and then move our feature branch into Master. Someone on the team was following the normal process, but instead of merging his branch into Master after it was QA'd he merged all of QA into Master. This screwed up our main branch as items that were not done being QA'd from other developers entered the branch.
The merge was done from the interface of gitLab and not terminal. What we want to do is completely revert this merge and all 102 commits. We don't want any history of it after the revert. What is the best way to do this on our remote? I've seen people mention using -m with git revert, but if i understand correctly it messes up history. Is there no true "undo" for merges? We're a little desperate here. THanks!