Hi Thomas,
If you want to maintain the blame history on your revert you can do the following. This will discard the bad merge from blame history without needing a force push.
git checkout dabb1b38eaf020bb0f97ea331a3f6c5e5aefe565 -b new_master # the last good commit on master that you want to "revert" to
git merge --strategy=ours origin/master
git push origin new_master:master
Doing the above changes the git blame for example from:
$ git blame bundles/org.eclipse.osgi.tests/META-INF/MANIFEST.MF
--snip--
713ce018b1 (Thomas Watson 2020-03-10 16:03:39 -0500 5) Bundle-Version: 3.15.300.qualifier
to
$ git blame bundles/org.eclipse.osgi.tests/META-INF/MANIFEST.MF
--snip--
27288b2b5b (Alexander Kurtakov 2020-03-08 14:28:04 +0200 5) Bundle-Version: 3.15.300.qualifier
and gives history that looks like this:
$ git log --graph --oneline | head
* 13c9a3027 Fix accidental merge
|\
| * 713ce018b Revert "Merge branch 'master' into osgiR8"
| * e8778b43b Revert "Update OSGi R8 APIs"
| * cee7c1437 Update OSGi R8 APIs
| * bf506346f Merge branch 'master' into osgiR8
| |\
| |/
|/|
* | dabb1b38e Bug 560974 - Fix exception type for null map key
HTH,
Jonah