удаляет предыдущие два изменения - но в истории они сохраняются, просто пытаюсь понять как это сделать чисто командным способом, без того, чтобы ручками их удалять !я вам подробно объяснил какой командой это сделать в ответе.
новый коммит добавляется конечно, после мерджа с мастеромПочему вы решили что после? Коммит, отменяющий действия f и g появляется в ветке feature1 ДО слияния конечно. И делать это легко. Нужно первым делом подтянуть к себе в тематическую ветку актуальную master, затем сделать банальный revert коммитов f и g. Либо сделать это одним шагом, создав синтетический коммит отменяющий всё новое в мастере и затем уже отправлять Pull Request в master. Все эти манипуляции в любом случае являются вандализмом и должны быть заблокированы на этапе рецензирования Pull Request.
Когда создавал токен прокликал все галочки
git merge --strategy=ours
отменит только те изменения, которые конфликтуют с нашими, а не все. Так что это не то.