Пытаясь перебазировать мою ветку разработки с помощью master, я закончил тем, что нажимал коммиты, которых не должно было быть. Затем в ужасной попытке восстановить pu sh я выполнил полную перезагрузку и снова принудительно нажал. Однако при создании нового запроса на перенос я замечаю, что все коммиты, которые я не хотел, все еще отображались.
Вот что я сделал:
$ git checkout my_dev_branch
$ git rebase origin/master
$ resolved all conflicts
$ git add --all
$ git rebase --continue
$ git push origin my_dev_branch
Я пошел, чтобы создать новый запрос на перенос и увидел кучу нежелательных коммитов. Итак, я сделал:
$ git revert -m 1 commit_hash <- did nothing
$ git reset --hard commit_hash_before_merge <- this worked
$ git push origin my_dev_branch
Я вернулся, чтобы сделать запрос на перенос, и все еще вижу все коммиты, которые мне не нужны. Есть ли способ удалить эти нежелательные коммиты или можно получить локальную синхронизацию my_dev_branch c с другой локальной ветвью, в которой, как я знаю, нет нежелательных коммитов?