Делаем временную ветку temp1 и пушим туда все что угодно.
Потом, когда закончим пилить фичу, переключаемся обратно на master или dev и делаем
git merge --squash temp1
Все изменения перекочуют в master/dev, но не будут закоммичены.
Теперь можно делать обычный коммит с описанием фичи, все будет в одном коммите.
После всего удаляем временную ветку с ключом --force
Временную ветку лучше назвать как-то более понятно, чем temp1, если работаете не одна. feat-super-puper.