Как правильно поступать, как не плодить такие плохие коммиты или как их потом удалять?
* пушим в одну ветку все плохие и хорошие коммиты
* когда работа над фичей закончена, делаем git reset на коммит до наших изменений
* коммитим все наши изменения в виде одного (или нескольких) коммита(ов)
* profit
При таком походе есть пара нюансов: пушить конечный коммит надо будет с форсом (--force), если кто-то вздумает смержить недоделанную ветку, то ничего хорошего это не принесёт.