Форсированно похерить всю работу сделанную в мастере и заменить её веткой feature?
Удали мастер (это же всего лишь ссылка) и переименуй feature в master.
git checkout feature # удостовериться что мы в нужной ветке
git branch -d master # удалить ненужную ветку
git branch -M master # переименовать текущую ветку в master
ЗЫ
Но лучше делать через создание правильного нового коммита. Тогда не будет проблем в команде.
Переписал решение
Станислав Бушуев в одну строку:
git checkout master # удостовериться что мы в нужной ветке
git merge --ff $(git commit-tree -p master -p feature -m "New feature" feature^{tree})
Наверное возможно даже так (если я правильно понял совет
HuckF1nn):
git checkout master # удостовериться что мы в нужной ветке
git merge feature -X ort their # принудительно сливаем фичу в мастер
В последнем случае получим настоящий коммит слияния, но все конфликты автоматически решатся в пользу feature. Но тут результат будет несколько другой, не все изменения мастера перезапишутся, а только конфликтующие.